本文整理汇总了Golang中github.com/cloudfoundry-incubator/garden/warden.Container.NetIn方法的典型用法代码示例。如果您正苦于以下问题:Golang Container.NetIn方法的具体用法?Golang Container.NetIn怎么用?Golang Container.NetIn使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类github.com/cloudfoundry-incubator/garden/warden.Container
的用法示例。
在下文中一共展示了Container.NetIn方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1:
err = container.Stop(false)
Ω(err).ShouldNot(HaveOccurred())
Ω(fakeConnection.Stopped("some-handle")).Should(BeEmpty())
Ω(otherFakeConnection.Stopped("some-handle")).ShouldNot(BeEmpty())
})
})
})
Describe("NetIn", func() {
It("sends a net in request", func() {
fakeConnection.WhenNetInning = func(handle string, hostPort, containerPort uint32) (uint32, uint32, error) {
return 111, 222, nil
}
hostPort, containerPort, err := container.NetIn(123, 456)
Ω(err).ShouldNot(HaveOccurred())
Ω(hostPort).Should(Equal(uint32(111)))
Ω(containerPort).Should(Equal(uint32(222)))
Ω(fakeConnection.NetInned("some-handle")).Should(ContainElement(
fake_connection.NetInSpec{
HostPort: 123,
ContainerPort: 456,
},
))
})
Context("when the request fails", func() {
disaster := errors.New("oh no!")
示例2:
restartServer()
newContainer, err := client.Create(warden.ContainerSpec{})
Expect(err).ToNot(HaveOccurred())
infoB, err := newContainer.Info()
Expect(err).ToNot(HaveOccurred())
Expect(infoA.HostIP).ToNot(Equal(infoB.HostIP))
Expect(infoA.ContainerIP).ToNot(Equal(infoB.ContainerIP))
})
})
Describe("a container's mapped port", func() {
It("does not get reused", func() {
netInAHost, netInAContainer, err := container.NetIn(0, 0)
Expect(err).ToNot(HaveOccurred())
restartServer()
containerB, err := client.Create(warden.ContainerSpec{})
Expect(err).ToNot(HaveOccurred())
netInBHost, netInBContainer, err := containerB.NetIn(0, 0)
Expect(err).ToNot(HaveOccurred())
Expect(netInAHost).ToNot(Equal(netInBHost))
Expect(netInAContainer).ToNot(Equal(netInBContainer))
})
})