JustBeforeEach(func() { requestBody = &models.TasksRequest{ Domain: domain, CellId: cellId, } request = newTestRequest(requestBody) handler.Tasks(logger, responseRecorder, request) }) Context("when reading tasks from controller succeeds", func() { var tasks []*models.Task BeforeEach(func() { tasks = []*models.Task{&task1, &task2} controller.TasksReturns(tasks, nil) }) It("returns a list of task", func() { Expect(responseRecorder.Code).To(Equal(http.StatusOK)) response := models.TasksResponse{} err := response.Unmarshal(responseRecorder.Body.Bytes()) Expect(err).NotTo(HaveOccurred()) Expect(response.Error).To(BeNil()) Expect(response.Tasks).To(Equal(tasks)) }) It("calls the controller with no filter", func() { Expect(controller.TasksCallCount()).To(Equal(1)) _, actualDomain, actualCellId := controller.TasksArgsForCall(0)