func createTransferTasks( logger *logrus.Logger, cfg config.Config, dsptchr *dispatcher.Dispatcher, ) { logger.Debugf( "Found %d remote hosts for the initial transfers", len(cfg.RemoteHosts), ) logger.Debugf("Size of initial transfers = %d bytes", cfg.InitTransferSize) for _, remoteHost := range cfg.RemoteHosts { host, portStr, err := net.SplitHostPort(remoteHost) if err != nil { logger.Fatalf("Parsing remote host `%s`: %s", remoteHost, err.Error()) } port, err := strconv.ParseInt(portStr, 10, 16) if err != nil { logger.Fatalf( "Parsing remote host's port `%s`: %s", remoteHost, err.Error(), ) } dsptchr.Create(api.TransferSpec{ IP: net.ParseIP(host), Port: uint16(port), Size: cfg.InitTransferSize, }) } }
Describe("Create", func() { var ( spec api.TransferSpec ) BeforeEach(func() { spec = api.TransferSpec{ IP: net.ParseIP("127.88.91.234"), Port: 1212, Size: 10 * 1024 * 1024, } }) It("should schedule a transfer task", func() { 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)