Exemple #1
0
				fakeConnection.WhenStreamingIn = func(handle string, dst string) (io.WriteCloser, error) {
					return nil, disaster
				}
			})

			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
				}