Merge pull request #6768 from gyuho/wtwt

clientv3/integration: close active connection to get ErrClientConnClosing
This commit is contained in:
Gyu-Ho Lee 2016-11-01 12:37:04 -07:00 committed by GitHub
commit 4575353693

View File

@ -614,18 +614,19 @@ func TestWatchErrConnClosed(t *testing.T) {
defer clus.Terminate(t) defer clus.Terminate(t)
cli := clus.Client(0) cli := clus.Client(0)
defer cli.Close()
wc := clientv3.NewWatcher(cli) wc := clientv3.NewWatcher(cli)
donec := make(chan struct{}) donec := make(chan struct{})
go func() { go func() {
defer close(donec) defer close(donec)
wc.Watch(context.TODO(), "foo") ch := wc.Watch(context.TODO(), "foo")
if err := wc.Close(); err != nil && err != grpc.ErrClientConnClosing { if wr := <-ch; grpc.ErrorDesc(wr.Err()) != grpc.ErrClientConnClosing.Error() {
t.Fatalf("expected %v, got %v", grpc.ErrClientConnClosing, err) t.Fatalf("expected %v, got %v", grpc.ErrClientConnClosing, grpc.ErrorDesc(wr.Err()))
} }
}() }()
if err := cli.Close(); err != nil { if err := cli.ActiveConnection().Close(); err != nil {
t.Fatal(err) t.Fatal(err)
} }
clus.TakeClient(0) clus.TakeClient(0)