From 8563fbc41ef2d18d4067928cc82f53f745cae446 Mon Sep 17 00:00:00 2001 From: Joram Wilander Date: Tue, 31 May 2016 12:56:15 -0400 Subject: Add a wait condition in outgoing webhook test to prevent race condition (#3177) --- api/post_test.go | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'api') diff --git a/api/post_test.go b/api/post_test.go index 8a07cdb59..29fe63ddc 100644 --- a/api/post_test.go +++ b/api/post_test.go @@ -136,7 +136,10 @@ func testCreatePostWithOutgoingHook( // validate the webhook body fields and write to the success channel on // success/failure. success := make(chan bool) + wait := make(chan bool, 1) ts := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { + <-wait + requestContentType := r.Header.Get("Content-Type") if requestContentType != expectedContentType { t.Logf("Content-Type is %s, should be %s", requestContentType, expectedContentType) @@ -217,6 +220,8 @@ func testCreatePostWithOutgoingHook( post = result.Data.(*model.Post) } + wait <- true + // We wait for the test server to write to the success channel and we make // the test fail if that doesn't happen before the timeout. select { -- cgit v1.2.3-1-g7c22