|
@@ -92,6 +92,9 @@ func TestPipeCloseWithError(t *testing.T) {
|
|
|
if err != a {
|
|
if err != a {
|
|
|
t.Logf("read error = %v, %v", err, a)
|
|
t.Logf("read error = %v, %v", err, a)
|
|
|
}
|
|
}
|
|
|
|
|
+ if p.Len() != 0 {
|
|
|
|
|
+ t.Errorf("pipe should have 0 unread bytes")
|
|
|
|
|
+ }
|
|
|
// Read and Write should fail.
|
|
// Read and Write should fail.
|
|
|
if n, err := p.Write([]byte("abc")); err != errClosedPipeWrite || n != 0 {
|
|
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)
|
|
t.Errorf("Write(abc) after close\ngot %v, %v\nwant 0, %v", n, err, errClosedPipeWrite)
|
|
@@ -99,6 +102,9 @@ func TestPipeCloseWithError(t *testing.T) {
|
|
|
if n, err := p.Read(make([]byte, 1)); err == nil || n != 0 {
|
|
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)
|
|
t.Errorf("Read() after close\ngot %v, nil\nwant 0, %v", n, errClosedPipeWrite)
|
|
|
}
|
|
}
|
|
|
|
|
+ if p.Len() != 0 {
|
|
|
|
|
+ t.Errorf("pipe should have 0 unread bytes")
|
|
|
|
|
+ }
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
func TestPipeBreakWithError(t *testing.T) {
|
|
func TestPipeBreakWithError(t *testing.T) {
|
|
@@ -116,6 +122,9 @@ func TestPipeBreakWithError(t *testing.T) {
|
|
|
if p.b != nil {
|
|
if p.b != nil {
|
|
|
t.Errorf("buffer should be nil after BreakWithError")
|
|
t.Errorf("buffer should be nil after BreakWithError")
|
|
|
}
|
|
}
|
|
|
|
|
+ if p.Len() != 3 {
|
|
|
|
|
+ t.Errorf("pipe should have 3 unread bytes")
|
|
|
|
|
+ }
|
|
|
// Write should succeed silently.
|
|
// Write should succeed silently.
|
|
|
if n, err := p.Write([]byte("abc")); err != nil || n != 3 {
|
|
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)
|
|
t.Errorf("Write(abc) after break\ngot %v, %v\nwant 0, nil", n, err)
|
|
@@ -123,6 +132,9 @@ func TestPipeBreakWithError(t *testing.T) {
|
|
|
if p.b != nil {
|
|
if p.b != nil {
|
|
|
t.Errorf("buffer should be nil after Write")
|
|
t.Errorf("buffer should be nil after Write")
|
|
|
}
|
|
}
|
|
|
|
|
+ if p.Len() != 6 {
|
|
|
|
|
+ t.Errorf("pipe should have 6 unread bytes")
|
|
|
|
|
+ }
|
|
|
// Read should fail.
|
|
// Read should fail.
|
|
|
if n, err := p.Read(make([]byte, 1)); err == nil || n != 0 {
|
|
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)
|
|
t.Errorf("Read() after close\ngot %v, nil\nwant 0, not nil", n)
|