func TestBiDirectional(t *testing.T) { a0, a1 := io.Pipe() b0, b1 := io.Pipe() rwc0 := vio.NewReadWriteCloser(a0, b1) rwc1 := vio.NewReadWriteCloser(b0, a1) rwcs0 := SplitReadWriteCloser(rwc0, 2) rwcs1 := SplitReadWriteCloser(rwc1, 2) DoTestBiDirectional(t, rwcs0, rwcs1) }
func SplitReadWriteCloser(rwc io.ReadWriteCloser, n uint) []io.ReadWriteCloser { rcs := SplitReadCloser(rwc, n) wcs := SplitWriteCloser(rwc, n) var r []io.ReadWriteCloser for i := 0; i < int(n); i++ { r = append(r, vio.NewReadWriteCloser(rcs[i], wcs[i])) } return r }