Merge pull request #634 from unihorn/42

fix(test/server): minimize the process of getting watch result
This commit is contained in:
Yicheng Qin 2014-03-18 11:44:31 -07:00
commit 4b5765e2c7
2 changed files with 6 additions and 8 deletions

View File

@ -85,17 +85,15 @@ func TestV1GetKeyDir(t *testing.T) {
// //
func TestV1WatchKey(t *testing.T) { func TestV1WatchKey(t *testing.T) {
tests.RunServer(func(s *server.Server) { tests.RunServer(func(s *server.Server) {
var body map[string]interface{} var watchResp *http.Response
c := make(chan bool) c := make(chan bool)
go func() { go func() {
resp, _ := tests.Get(fmt.Sprintf("%s%s", s.URL(), "/v1/watch/foo/bar")) watchResp, _ = tests.Get(fmt.Sprintf("%s%s", s.URL(), "/v1/watch/foo/bar"))
body = tests.ReadBodyJSON(resp)
c <- true c <- true
}() }()
// Make sure response didn't fire early. // Make sure response didn't fire early.
time.Sleep(1 * time.Millisecond) time.Sleep(1 * time.Millisecond)
assert.Nil(t, body, "")
// Set a value. // Set a value.
v := url.Values{} v := url.Values{}
@ -113,6 +111,7 @@ func TestV1WatchKey(t *testing.T) {
t.Fatal("cannot get watch result") t.Fatal("cannot get watch result")
} }
body := tests.ReadBodyJSON(watchResp)
assert.NotNil(t, body, "") assert.NotNil(t, body, "")
assert.Equal(t, body["action"], "set", "") assert.Equal(t, body["action"], "set", "")

View File

@ -90,17 +90,15 @@ func TestV2GetKeyRecursively(t *testing.T) {
// //
func TestV2WatchKey(t *testing.T) { func TestV2WatchKey(t *testing.T) {
tests.RunServer(func(s *server.Server) { tests.RunServer(func(s *server.Server) {
var body map[string]interface{} var watchResp *http.Response
c := make(chan bool) c := make(chan bool)
go func() { go func() {
resp, _ := tests.Get(fmt.Sprintf("%s%s", s.URL(), "/v2/keys/foo/bar?wait=true")) watchResp, _ = tests.Get(fmt.Sprintf("%s%s", s.URL(), "/v2/keys/foo/bar?wait=true"))
body = tests.ReadBodyJSON(resp)
c <- true c <- true
}() }()
// Make sure response didn't fire early. // Make sure response didn't fire early.
time.Sleep(1 * time.Millisecond) time.Sleep(1 * time.Millisecond)
assert.Nil(t, body, "")
// Set a value. // Set a value.
v := url.Values{} v := url.Values{}
@ -118,6 +116,7 @@ func TestV2WatchKey(t *testing.T) {
t.Fatal("cannot get watch result") t.Fatal("cannot get watch result")
} }
body := tests.ReadBodyJSON(watchResp)
assert.NotNil(t, body, "") assert.NotNil(t, body, "")
assert.Equal(t, body["action"], "set", "") assert.Equal(t, body["action"], "set", "")