var err error stagingRequestJson, err = json.Marshal(stagingRequest) Expect(err).NotTo(HaveOccurred()) }) It("increments the counter to track arriving staging messages", func() { Expect(fakeMetricSender.GetCounter("StagingStartRequestsReceived")).To(Equal(uint64(1))) }) It("returns an Accepted response", func() { Expect(responseRecorder.Code).To(Equal(http.StatusAccepted)) }) It("builds a staging recipe", func() { Expect(fakeBackend.BuildRecipeCallCount()).To(Equal(1)) guid, request := fakeBackend.BuildRecipeArgsForCall(0) Expect(guid).To(Equal("a-staging-guid")) Expect(request).To(Equal(stagingRequest)) }) Context("when the recipe was built successfully", func() { var fakeTaskDef = &models.TaskDefinition{Annotation: "test annotation"} BeforeEach(func() { fakeBackend.BuildRecipeReturns(fakeTaskDef, "a-guid", "a-domain", nil) }) It("does not send a staging complete message", func() { Expect(fakeCcClient.StagingCompleteCallCount()).To(Equal(0)) })