Eventually(stdout).Should(gbytes.Say("stdout data")) Eventually(stderr).Should(gbytes.Say("stderr data")) }) }) Describe("NetIn", func() { It("sends a net in request", func() { fakeConnection.NetInReturns(111, 222, nil) hostPort, containerPort, err := container.NetIn(123, 456) Ω(err).ShouldNot(HaveOccurred()) Ω(hostPort).Should(Equal(uint32(111))) Ω(containerPort).Should(Equal(uint32(222))) h, hp, cp := fakeConnection.NetInArgsForCall(0) Ω(h).Should(Equal("some-handle")) Ω(hp).Should(Equal(uint32(123))) Ω(cp).Should(Equal(uint32(456))) }) Context("when the request fails", func() { disaster := errors.New("oh no!") BeforeEach(func() { fakeConnection.NetInReturns(0, 0, disaster) }) It("returns the error", func() { _, _, err := container.NetIn(123, 456) Ω(err).Should(Equal(disaster))
var gotHostPort uint32 var gotContainerPort uint32 itRetries(func() error { var err error gotHostPort, gotContainerPort, err = conn.NetIn("la-contineur", 1, 2) return err }, func(err error) { innerConnection.NetInReturns(hostPort, containerPort, err) }, func() int { return innerConnection.NetInCallCount() }, func() { It("calls through to garden", func() { Ω(innerConnection.NetInCallCount()).Should(Equal(1)) handle, hostPort, containerPort := innerConnection.NetInArgsForCall(0) Ω(handle).Should(Equal("la-contineur")) Ω(hostPort).Should(Equal(uint32(1))) Ω(containerPort).Should(Equal(uint32(2))) }) It("returns the ports", func() { Ω(gotHostPort).Should(Equal(hostPort)) Ω(gotContainerPort).Should(Equal(containerPort)) }) }) }) Describe("NetOut", func() { netOutRule := garden.NetOutRule{ Protocol: garden.ProtocolTCP,