Merge pull request #408 from iamqizhao/master

fix a bug in test
diff --git a/test/end2end_test.go b/test/end2end_test.go
index d47af7e..862261e 100644
--- a/test/end2end_test.go
+++ b/test/end2end_test.go
@@ -1063,11 +1063,12 @@
 	done := make(chan struct{})
 	ch := make(chan int)
 	go func() {
+		timer := time.After(5 * time.Second)
 		for {
 			select {
 			case <-time.After(5 * time.Millisecond):
 				ch <- 0
-			case <-time.After(5 * time.Second):
+			case <-timer:
 				close(done)
 				return
 			}