Browse Source

Merge pull request #2302 from xiang90/fix_travis

integration: wait for slow travis
Xiang Li 11 years ago
parent
commit
6d9d7b4497
2 changed files with 22 additions and 3 deletions
  1. 18 0
      integration/cluster_test.go
  2. 4 3
      integration/member_test.go

+ 18 - 0
integration/cluster_test.go

@@ -547,6 +547,24 @@ func (m *member) Launch() error {
 	return nil
 }
 
+func (m *member) WaitOK(t *testing.T) {
+	cc := mustNewHTTPClient(t, []string{m.URL()})
+	kapi := client.NewKeysAPI(cc)
+	for {
+		ctx, cancel := context.WithTimeout(context.Background(), requestTimeout)
+		_, err := kapi.Get(ctx, "/")
+		if err != nil {
+			time.Sleep(tickDuration)
+			continue
+		}
+		cancel()
+		break
+	}
+	for m.s.Leader() == 0 {
+		time.Sleep(tickDuration)
+	}
+}
+
 func (m *member) URL() string { return m.ClientURLs[0].String() }
 
 func (m *member) Pause() {

+ 4 - 3
integration/member_test.go

@@ -86,6 +86,7 @@ func TestSnapshotAndRestartMember(t *testing.T) {
 	m.SnapCount = 100
 	m.Launch()
 	defer m.Terminate(t)
+	m.WaitOK(t)
 
 	resps := make([]*client.Response, 120)
 	var err error
@@ -96,7 +97,7 @@ func TestSnapshotAndRestartMember(t *testing.T) {
 		key := fmt.Sprintf("foo%d", i)
 		resps[i], err = kapi.Create(ctx, "/"+key, "bar", -1)
 		if err != nil {
-			t.Fatalf("create on %s error: %v", m.URL(), err)
+			t.Fatalf("#%d: create on %s error: %v", i, m.URL(), err)
 		}
 		cancel()
 	}
@@ -110,12 +111,12 @@ func TestSnapshotAndRestartMember(t *testing.T) {
 		key := fmt.Sprintf("foo%d", i)
 		resp, err := kapi.Get(ctx, "/"+key)
 		if err != nil {
-			t.Fatalf("get on %s error: %v", m.URL(), err)
+			t.Fatalf("#%d: get on %s error: %v", i, m.URL(), err)
 		}
 		cancel()
 
 		if !reflect.DeepEqual(resp.Node, resps[i].Node) {
-			t.Errorf("#%d: node = %v, want %v", resp.Node, resps[i].Node)
+			t.Errorf("#%d: node = %v, want %v", i, resp.Node, resps[i].Node)
 		}
 	}
 }