quic: deflake TestStreamsCreateConcurrency

This test assumed that creating a stream and flushing it on the
client ensured the server had accepted the stream. This isn't
the case; the stream has been delivered to the server, but there's
no guarantee that it been accepted by the user layer.

Change the test to make a full loop: The client creates a stream,
and then waits for the server to close it.

Fixes golang/go#64788

Change-Id: I24f08502e9f5d8bd5a17e680b0aa19dcc2623841
Reviewed-on: https://go-review.googlesource.com/c/net/+/554175
Reviewed-by: Bryan Mills <bcmills@google.com>
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
diff --git a/internal/quic/conn_streams_test.go b/internal/quic/conn_streams_test.go
index fb9af47..6815e40 100644
--- a/internal/quic/conn_streams_test.go
+++ b/internal/quic/conn_streams_test.go
@@ -510,6 +510,10 @@
 					return
 				}
 				s.Flush()
+				_, err = io.ReadAll(s)
+				if err != nil {
+					t.Errorf("ReadFull: %v", err)
+				}
 				s.Close()
 			}
 		}()