Skip to content

Commit

Permalink
rpc: add missing timer.Stop calls in websocket tests (ethereum#20863)
Browse files Browse the repository at this point in the history
  • Loading branch information
ucwong authored Apr 2, 2020
1 parent f98caba commit f7b29ec
Showing 1 changed file with 7 additions and 5 deletions.
12 changes: 7 additions & 5 deletions rpc/websocket_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -142,6 +142,7 @@ func TestClientWebsocketPing(t *testing.T) {

// Wait for the subscription result.
timeout := time.NewTimer(5 * time.Second)
defer timeout.Stop()
for {
select {
case err := <-sub.Err():
Expand Down Expand Up @@ -227,9 +228,11 @@ func wsPingTestHandler(t *testing.T, conn *websocket.Conn, shutdown, sendPing <-

// Write messages.
var (
sendResponse <-chan time.Time
wantPong string
wantPong string
timer = time.NewTimer(0)
)
defer timer.Stop()
<-timer.C
for {
select {
case _, open := <-sendPing:
Expand All @@ -246,11 +249,10 @@ func wsPingTestHandler(t *testing.T, conn *websocket.Conn, shutdown, sendPing <-
t.Errorf("got pong with wrong data %q", data)
}
wantPong = ""
sendResponse = time.NewTimer(200 * time.Millisecond).C
case <-sendResponse:
timer.Reset(200 * time.Millisecond)
case <-timer.C:
t.Logf("server sending response")
conn.WriteMessage(websocket.TextMessage, []byte(subNotify))
sendResponse = nil
case <-shutdown:
conn.Close()
return
Expand Down

0 comments on commit f7b29ec

Please sign in to comment.