dsptchr.Create(spec) Expect(fakeScheduler.ScheduleCallCount()).To(Equal(1)) task := fakeScheduler.ScheduleArgsForCall(0) Expect(task).To(BeAssignableToTypeOf(&dispatcher.TransferTask{})) }) It("should register the transfer", func() { dsptchr.Create(spec) Expect(fakeScheduler.ScheduleCallCount()).To(Equal(1)) scheduledTask := fakeScheduler.ScheduleArgsForCall(0) Expect(fakeApiRegistry.RegisterTransferCallCount()).To(Equal(1)) regSpec, regStater := fakeApiRegistry.RegisterTransferArgsForCall(0) Expect(regSpec).To(Equal(spec)) Expect(regStater).To(Equal(scheduledTask)) }) Describe("scheduled task", func() { var scheduledTask *dispatcher.TransferTask BeforeEach(func() { dsptchr.Create(spec) Expect(fakeScheduler.ScheduleCallCount()).To(Equal(1)) task := fakeScheduler.ScheduleArgsForCall(0) var ok bool scheduledTask, ok = task.(*dispatcher.TransferTask)