Browse Source

Fix unit test race condition (#2516)

tags/v1.3.0-rc1
Ethan Koenig 6 years ago
parent
commit
b496e3e1cc
1 changed files with 7 additions and 2 deletions
  1. 7
    2
      models/pull_test.go

+ 7
- 2
models/pull_test.go View File

package models package models


import ( import (
"strconv"
"testing" "testing"
"time" "time"


pr := AssertExistsAndLoadBean(t, &PullRequest{ID: 1}).(*PullRequest) pr := AssertExistsAndLoadBean(t, &PullRequest{ID: 1}).(*PullRequest)
pr.AddToTaskQueue() pr.AddToTaskQueue()


// briefly sleep so that background threads have time to run
time.Sleep(time.Millisecond)
select {
case id := <-pullRequestQueue.Queue():
assert.EqualValues(t, strconv.FormatInt(pr.ID, 10), id)
case <-time.After(time.Second):
assert.Fail(t, "Timeout: nothing was added to pullRequestQueue")
}


assert.True(t, pullRequestQueue.Exist(pr.ID)) assert.True(t, pullRequestQueue.Exist(pr.ID))
pr = AssertExistsAndLoadBean(t, &PullRequest{ID: 1}).(*PullRequest) pr = AssertExistsAndLoadBean(t, &PullRequest{ID: 1}).(*PullRequest)

Loading…
Cancel
Save