ExpireCompletedTaskDuration: expireCompletedTaskDuration, } cellPresence := models.NewCellPresence("cell-id", "1.1.1.1", "z1", models.CellCapacity{}, nil, nil) cellSet = models.CellSet{"cell-id": &cellPresence} fakeServiceClient.CellsReturns(cellSet, nil) }) JustBeforeEach(func() { request := newTestRequest(requestBody) handler.ConvergeTasks(responseRecorder, request) }) It("calls ConvergeTasks", func() { Expect(responseRecorder.Code).To(Equal(http.StatusOK)) Expect(fakeTaskDB.ConvergeTasksCallCount()).To(Equal(1)) taskLogger, actualCellSet, actualKickDuration, actualPendingDuration, actualCompletedDuration := fakeTaskDB.ConvergeTasksArgsForCall(0) Expect(taskLogger.SessionName()).To(ContainSubstring("converge-tasks")) Expect(actualCellSet).To(BeEquivalentTo(cellSet)) Expect(actualKickDuration).To(BeEquivalentTo(kickTaskDuration)) Expect(actualPendingDuration).To(BeEquivalentTo(expirePendingTaskDuration)) Expect(actualCompletedDuration).To(BeEquivalentTo(expireCompletedTaskDuration)) response := &models.TaskLifecycleResponse{} err := response.Unmarshal(responseRecorder.Body.Bytes()) Expect(err).NotTo(HaveOccurred()) Expect(response.Error).To(BeNil()) }) Context("when the DB returns an unrecoverable error", func() { BeforeEach(func() {