示例#1
0
		var transferResults transfer.TransferResults

		BeforeEach(func() {
			transferResults = transfer.TransferResults{
				Duration:  time.Millisecond * 100,
				RTT:       time.Millisecond * 20,
				Checksum:  uint32(12),
				BytesSent: uint32(10 * 1024 * 1024),
			}
			fakeTransferClient.TransferReturns(transferResults, nil)
		})

		It("should register the transfer results to the registry", func() {
			t.Run()

			Expect(fakeRegistry.RegisterResultsCallCount()).To(Equal(1))
			ip, res := fakeRegistry.RegisterResultsArgsForCall(0)
			Expect(ip).To(Equal(transferSpec.IP))
			Expect(res.IP).To(Equal(transferSpec.IP))
			Expect(res.BytesSent).To(Equal(transferResults.BytesSent))
			Expect(res.Checksum).To(Equal(transferResults.Checksum))
			Expect(res.Duration).To(Equal(transferResults.Duration))
			Expect(res.RTT).To(Equal(transferResults.RTT))
			Expect(res.Time).To(BeTemporally("~", time.Now(), time.Second))
		})
	})

	Context("when the task takes time", func() {
		var transferrerChan chan bool

		BeforeEach(func() {