summaryrefslogtreecommitdiff
path: root/src/pkg/reflect/all_test.go
diff options
context:
space:
mode:
authorRuss Cox <rsc@golang.org>2009-08-26 10:47:18 -0700
committerRuss Cox <rsc@golang.org>2009-08-26 10:47:18 -0700
commitea40944a877af0851eb56349ba9ad1e41396ea54 (patch)
treeac488031c2ac65930e9fef6cde4ff196b5a7247b /src/pkg/reflect/all_test.go
parentcb1a4626c90831f20decda3089cc04673ad9609b (diff)
downloadgolang-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.go19
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