From 84ea38c24330622053502a9c21b01a13d78c980b Mon Sep 17 00:00:00 2001 From: Marten Seemann Date: Tue, 12 Dec 2017 22:57:13 +0700 Subject: [PATCH] fix concurrent streams integration test This test actually never worked. stream.Write blocks until the data has been sent out, so we never opened the maximum number of concurrent streams. --- integrationtests/self/stream_test.go | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/integrationtests/self/stream_test.go b/integrationtests/self/stream_test.go index b5d2b02c3..f56a8d80f 100644 --- a/integrationtests/self/stream_test.go +++ b/integrationtests/self/stream_test.go @@ -6,7 +6,6 @@ import ( "io" "io/ioutil" "sync" - "time" "github.com/lucas-clemente/quic-go/integrationtests/tools/testserver" @@ -34,12 +33,15 @@ var _ = Describe("Stream tests", func() { var wg sync.WaitGroup wg.Add(numStreams) for i := 0; i < numStreams; i++ { - str, err := sess.OpenStream() + str, err := sess.OpenStreamSync() Expect(err).ToNot(HaveOccurred()) data := testserver.GeneratePRData(25 * i) - _, err = str.Write(data) - Expect(err).ToNot(HaveOccurred()) - Expect(str.Close()).To(Succeed()) + go func() { + defer GinkgoRecover() + _, err := str.Write(data) + Expect(err).ToNot(HaveOccurred()) + Expect(str.Close()).To(Succeed()) + }() go func() { defer GinkgoRecover() defer wg.Done() @@ -47,7 +49,6 @@ var _ = Describe("Stream tests", func() { Expect(err).ToNot(HaveOccurred()) Expect(dataRead).To(Equal(data)) }() - time.Sleep(5 * time.Millisecond) } wg.Wait() }