summaryrefslogtreecommitdiffstats
path: root/vendor/golang.org/x/net/http2/pipe_test.go
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/golang.org/x/net/http2/pipe_test.go')
-rw-r--r--vendor/golang.org/x/net/http2/pipe_test.go21
1 files changed, 21 insertions, 0 deletions
diff --git a/vendor/golang.org/x/net/http2/pipe_test.go b/vendor/golang.org/x/net/http2/pipe_test.go
index 763229999..1bf351ff6 100644
--- a/vendor/golang.org/x/net/http2/pipe_test.go
+++ b/vendor/golang.org/x/net/http2/pipe_test.go
@@ -92,6 +92,13 @@ func TestPipeCloseWithError(t *testing.T) {
if err != a {
t.Logf("read error = %v, %v", err, a)
}
+ // Read and Write should fail.
+ if n, err := p.Write([]byte("abc")); err != errClosedPipeWrite || n != 0 {
+ t.Errorf("Write(abc) after close\ngot %v, %v\nwant 0, %v", n, err, errClosedPipeWrite)
+ }
+ if n, err := p.Read(make([]byte, 1)); err == nil || n != 0 {
+ t.Errorf("Read() after close\ngot %v, nil\nwant 0, %v", n, errClosedPipeWrite)
+ }
}
func TestPipeBreakWithError(t *testing.T) {
@@ -106,4 +113,18 @@ func TestPipeBreakWithError(t *testing.T) {
if err != a {
t.Logf("read error = %v, %v", err, a)
}
+ if p.b != nil {
+ t.Errorf("buffer should be nil after BreakWithError")
+ }
+ // Write should succeed silently.
+ if n, err := p.Write([]byte("abc")); err != nil || n != 3 {
+ t.Errorf("Write(abc) after break\ngot %v, %v\nwant 0, nil", n, err)
+ }
+ if p.b != nil {
+ t.Errorf("buffer should be nil after Write")
+ }
+ // Read should fail.
+ if n, err := p.Read(make([]byte, 1)); err == nil || n != 0 {
+ t.Errorf("Read() after close\ngot %v, nil\nwant 0, not nil", n)
+ }
}