diff options
author | Russ Cox <rsc@golang.org> | 2009-08-26 10:47:18 -0700 |
---|---|---|
committer | Russ Cox <rsc@golang.org> | 2009-08-26 10:47:18 -0700 |
commit | ea40944a877af0851eb56349ba9ad1e41396ea54 (patch) | |
tree | ac488031c2ac65930e9fef6cde4ff196b5a7247b /src/pkg/reflect/all_test.go | |
parent | cb1a4626c90831f20decda3089cc04673ad9609b (diff) | |
download | golang-ea40944a877af0851eb56349ba9ad1e41396ea54.tar.gz |
add Close() and Closed() to ChanValue
R=r
DELTA=60 (56 added, 3 deleted, 1 changed)
OCL=33868
CL=33872
Diffstat (limited to 'src/pkg/reflect/all_test.go')
-rw-r--r-- | src/pkg/reflect/all_test.go | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/src/pkg/reflect/all_test.go b/src/pkg/reflect/all_test.go index 5f0211c6a..3a1c220da 100644 --- a/src/pkg/reflect/all_test.go +++ b/src/pkg/reflect/all_test.go @@ -726,6 +726,25 @@ func TestChan(t *testing.T) { t.Errorf("TrySend 6, recv %d", i); } } + + // Close + c <- 123; + cv.Close(); + if cv.Closed() { + t.Errorf("closed too soon - 1"); + } + if i := cv.Recv().(*IntValue).Get(); i != 123 { + t.Errorf("send 123 then close; Recv %d", i); + } + if cv.Closed() { + t.Errorf("closed too soon - 2"); + } + if i := cv.Recv().(*IntValue).Get(); i != 0 { + t.Errorf("after close Recv %d", i); + } + if !cv.Closed() { + t.Errorf("not closed"); + } } // check creation of unbuffered channel |