Commit 3b66fd3b authored by Steven Allen's avatar Steven Allen

test closing while reading/writing on varint readers/writers

parent 373c219f
......@@ -33,6 +33,20 @@ func TestReadWriteMsgSync(t *testing.T) {
SubtestReadWriteMsgSync(t, writer, reader)
}
func TestReadClose(t *testing.T) {
r, w := io.Pipe()
writer := NewWriter(w)
reader := NewReader(r)
SubtestReadClose(t, writer, reader)
}
func TestWriteClose(t *testing.T) {
r, w := io.Pipe()
writer := NewWriter(w)
reader := NewReader(r)
SubtestWriteClose(t, writer, reader)
}
func SubtestReadWrite(t *testing.T, writer WriteCloser, reader ReadCloser) {
msgs := [1000][]byte{}
......@@ -197,11 +211,8 @@ func TestBadSizes(t *testing.T) {
_ = msg
}
func TestReadClose(t *testing.T) {
r, w := io.Pipe()
writer := NewWriter(w)
func SubtestReadClose(t *testing.T, writer WriteCloser, reader ReadCloser) {
defer writer.Close()
reader := NewReader(r)
buf := [10]byte{}
done := make(chan struct{})
......@@ -217,10 +228,7 @@ func TestReadClose(t *testing.T) {
<-done
}
func TestWriteClose(t *testing.T) {
r, w := io.Pipe()
writer := NewWriter(w)
reader := NewReader(r)
func SubtestWriteClose(t *testing.T, writer WriteCloser, reader ReadCloser) {
defer reader.Close()
buf := [10]byte{}
......
......@@ -3,6 +3,7 @@ package msgio
import (
"bytes"
"encoding/binary"
"io"
"testing"
)
......@@ -64,3 +65,17 @@ func SubtestVarintWrite(t *testing.T, msg []byte) {
t.Fatalf("wrote incorrect number of bytes: %d != %d", len(bb), bblen)
}
}
func TestVarintReadClose(t *testing.T) {
r, w := io.Pipe()
writer := NewVarintWriter(w)
reader := NewVarintReader(r)
SubtestReadClose(t, writer, reader)
}
func TestVarintWriteClose(t *testing.T) {
r, w := io.Pipe()
writer := NewVarintWriter(w)
reader := NewVarintReader(r)
SubtestWriteClose(t, writer, reader)
}
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