fix race condition in tests (#7609)

This commit is contained in:
Chris
2017-10-11 12:16:04 -07:00
committed by Christopher Speller
parent 675f13c808
commit aa2b82727f
2 changed files with 32 additions and 0 deletions

View File

@@ -4,6 +4,7 @@
package api
import (
"net"
"strings"
"time"
@@ -86,7 +87,20 @@ func ReloadConfigForSetup() {
*utils.Cfg.TeamSettings.EnableOpenServer = true
}
func (me *TestHelper) waitForConnectivity() {
for i := 0; i < 1000; i++ {
_, err := net.Dial("tcp", "localhost"+*utils.Cfg.ServiceSettings.ListenAddress)
if err == nil {
return
}
time.Sleep(time.Millisecond * 20)
}
panic("unable to connect")
}
func (me *TestHelper) InitBasic() *TestHelper {
me.waitForConnectivity()
me.BasicClient = me.CreateClient()
me.BasicUser = me.CreateUser(me.BasicClient)
me.LoginBasic()
@@ -106,6 +120,8 @@ func (me *TestHelper) InitBasic() *TestHelper {
}
func (me *TestHelper) InitSystemAdmin() *TestHelper {
me.waitForConnectivity()
me.SystemAdminClient = me.CreateClient()
me.SystemAdminUser = me.CreateUser(me.SystemAdminClient)
me.SystemAdminUser.Password = "Password1"

View File

@@ -7,6 +7,7 @@ import (
"bytes"
"fmt"
"io"
"net"
"net/http"
"os"
"reflect"
@@ -151,7 +152,20 @@ func (me *TestHelper) TearDown() {
utils.EnableDebugLogForTest()
}
func (me *TestHelper) waitForConnectivity() {
for i := 0; i < 1000; i++ {
_, err := net.Dial("tcp", "localhost"+*utils.Cfg.ServiceSettings.ListenAddress)
if err == nil {
return
}
time.Sleep(time.Millisecond * 20)
}
panic("unable to connect")
}
func (me *TestHelper) InitBasic() *TestHelper {
me.waitForConnectivity()
me.TeamAdminUser = me.CreateUser()
me.LoginTeamAdmin()
me.BasicTeam = me.CreateTeam()
@@ -176,6 +190,8 @@ func (me *TestHelper) InitBasic() *TestHelper {
}
func (me *TestHelper) InitSystemAdmin() *TestHelper {
me.waitForConnectivity()
me.SystemAdminUser = me.CreateUser()
me.App.UpdateUserRoles(me.SystemAdminUser.Id, model.ROLE_SYSTEM_USER.Id+" "+model.ROLE_SYSTEM_ADMIN.Id)
me.LoginSystemAdmin()