Unverified Commit e70b77d8 authored by Steven Allen's avatar Steven Allen Committed by GitHub

Merge pull request #32 from dennis-tra/master

Defer closing stream for reading
parents dccf408e 3c368cb0
...@@ -55,7 +55,7 @@ type Options struct { ...@@ -55,7 +55,7 @@ type Options struct {
} }
func fullClose(t *testing.T, s mux.MuxedStream) { func fullClose(t *testing.T, s mux.MuxedStream) {
if err := s.Close(); err != nil { if err := s.CloseWrite(); err != nil {
t.Error(err) t.Error(err)
s.Reset() s.Reset()
return return
...@@ -67,6 +67,9 @@ func fullClose(t *testing.T, s mux.MuxedStream) { ...@@ -67,6 +67,9 @@ func fullClose(t *testing.T, s mux.MuxedStream) {
if len(b) != 0 { if len(b) != 0 {
t.Error("expected to be done reading") t.Error("expected to be done reading")
} }
if err := s.Close(); err != nil {
t.Error(err)
}
} }
func randBuf(size int) []byte { func randBuf(size int) []byte {
......
...@@ -141,8 +141,8 @@ func SubtestBasic(t *testing.T, ta, tb transport.Transport, maddr ma.Multiaddr, ...@@ -141,8 +141,8 @@ func SubtestBasic(t *testing.T, ta, tb transport.Transport, maddr ma.Multiaddr,
t.Fatalf("failed to write enough data (a->b)") t.Fatalf("failed to write enough data (a->b)")
return return
} }
err = s.Close()
if err != nil { if err = s.CloseWrite(); err != nil {
t.Fatal(err) t.Fatal(err)
return return
} }
...@@ -155,6 +155,11 @@ func SubtestBasic(t *testing.T, ta, tb transport.Transport, maddr ma.Multiaddr, ...@@ -155,6 +155,11 @@ func SubtestBasic(t *testing.T, ta, tb transport.Transport, maddr ma.Multiaddr,
if !bytes.Equal(testData, buf) { if !bytes.Equal(testData, buf) {
t.Errorf("expected %s, got %s", testData, buf) t.Errorf("expected %s, got %s", testData, buf)
} }
if err = s.Close(); err != nil {
t.Fatal(err)
return
}
} }
func SubtestPingPong(t *testing.T, ta, tb transport.Transport, maddr ma.Multiaddr, peerA peer.ID) { func SubtestPingPong(t *testing.T, ta, tb transport.Transport, maddr ma.Multiaddr, peerA peer.ID) {
...@@ -265,7 +270,10 @@ func SubtestPingPong(t *testing.T, ta, tb transport.Transport, maddr ma.Multiadd ...@@ -265,7 +270,10 @@ func SubtestPingPong(t *testing.T, ta, tb transport.Transport, maddr ma.Multiadd
t.Error("failed to write enough data (a->b)") t.Error("failed to write enough data (a->b)")
return return
} }
s.Close() if err = s.CloseWrite(); err != nil {
t.Fatal(err)
return
}
ret, err := ioutil.ReadAll(s) ret, err := ioutil.ReadAll(s)
if err != nil { if err != nil {
...@@ -276,6 +284,11 @@ func SubtestPingPong(t *testing.T, ta, tb transport.Transport, maddr ma.Multiadd ...@@ -276,6 +284,11 @@ func SubtestPingPong(t *testing.T, ta, tb transport.Transport, maddr ma.Multiadd
if !bytes.Equal(data, ret) { if !bytes.Equal(data, ret) {
t.Errorf("expected %q, got %q", string(data), string(ret)) t.Errorf("expected %q, got %q", string(data), string(ret))
} }
if err = s.Close(); err != nil {
t.Fatal(err)
return
}
}(i) }(i)
} }
wg.Wait() wg.Wait()
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment