From 2817baf3f8081aad37de03be46d125f1a8bac437 Mon Sep 17 00:00:00 2001 From: Xiang Li Date: Thu, 10 Apr 2014 23:28:40 -0400 Subject: [PATCH] fix(discovery_test.go) protect the garbageHandler by a lock --- tests/functional/discovery_test.go | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/tests/functional/discovery_test.go b/tests/functional/discovery_test.go index 9a8c2ea3a..6ada6aad0 100644 --- a/tests/functional/discovery_test.go +++ b/tests/functional/discovery_test.go @@ -7,6 +7,7 @@ import ( "net/http/httptest" "net/url" "strings" + "sync" "testing" "time" @@ -20,6 +21,7 @@ import ( type garbageHandler struct { t *testing.T success bool + sync.Mutex } func (g *garbageHandler) ServeHTTP(w http.ResponseWriter, r *http.Request) { @@ -27,6 +29,9 @@ func (g *garbageHandler) ServeHTTP(w http.ResponseWriter, r *http.Request) { if r.URL.String() != "/v2/keys/_etcd/registry/1/node1" { g.t.Fatalf("Unexpected web request") } + g.Lock() + defer g.Unlock() + g.success = true } @@ -51,6 +56,8 @@ func TestDiscoveryDownNoBackupPeers(t *testing.T) { t.Fatal(err.Error()) } + g.Lock() + defer g.Unlock() if !g.success { t.Fatal("Discovery server never called") } @@ -82,6 +89,8 @@ func TestDiscoveryDownWithBackupPeers(t *testing.T) { t.Fatal(err.Error()) } + g.Lock() + defer g.Unlock() if !g.success { t.Fatal("Discovery server never called") }