本文整理匯總了Golang中github.com/cloudfoundry-incubator/garden/warden.Container.StreamOut方法的典型用法代碼示例。如果您正苦於以下問題:Golang Container.StreamOut方法的具體用法?Golang Container.StreamOut怎麽用?Golang Container.StreamOut使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類github.com/cloudfoundry-incubator/garden/warden.Container
的用法示例。
在下文中一共展示了Container.StreamOut方法的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Golang代碼示例。
示例1:
_, stream, err := container.Run(warden.ProcessSpec{
Script: `test -f /tmp/some-container-dir/some-temp-dir/some-temp-file && exit 42`,
})
Expect(*(<-stream).ExitStatus).To(Equal(uint32(42)))
})
Context("and then copying them out", func() {
It("streams the directory", func() {
_, stream, err := container.Run(warden.ProcessSpec{
Script: `mkdir -p some-outer-dir/some-inner-dir; touch some-outer-dir/some-inner-dir/some-file;`,
})
Expect(*(<-stream).ExitStatus).To(Equal(uint32(0)))
tarOutput, err := container.StreamOut("some-outer-dir/some-inner-dir")
Ω(err).ShouldNot(HaveOccurred())
tarReader := tar.NewReader(tarOutput)
header, err := tarReader.Next()
Ω(err).ShouldNot(HaveOccurred())
Ω(header.Name).Should(Equal("some-inner-dir/"))
header, err = tarReader.Next()
Ω(err).ShouldNot(HaveOccurred())
Ω(header.Name).Should(Equal("some-inner-dir/some-file"))
})
Context("with a trailing slash", func() {
It("streams the contents of the directory", func() {
示例2:
It("returns the error", func() {
_, err := container.StreamIn("to")
Ω(err).Should(Equal(disaster))
})
})
})
Describe("StreamOut", func() {
It("sends a stream out request", func() {
fakeConnection.WhenStreamingOut = func(handle string, src string) (io.Reader, error) {
Ω(src).Should(Equal("from"))
return strings.NewReader("kewl"), nil
}
reader, err := container.StreamOut("from")
bytes, err := ioutil.ReadAll(reader)
Ω(err).ShouldNot(HaveOccurred())
Ω(string(bytes)).Should(Equal("kewl"))
})
Context("when streaming out fails", func() {
disaster := errors.New("oh no!")
BeforeEach(func() {
fakeConnection.WhenStreamingOut = func(handle string, src string) (io.Reader, error) {
return nil, disaster
}
})
It("returns the error", func() {