From 9dbf6b02d24b52ae43e36905bbb1e83087e1dfe9 Mon Sep 17 00:00:00 2001 From: Junegunn Choi Date: Sun, 11 Jan 2015 23:49:12 +0900 Subject: Fix race conditions - Wait for completions of goroutines when cancelling a search - Remove shared access to rank field of Item --- src/merger_test.go | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) (limited to 'src/merger_test.go') diff --git a/src/merger_test.go b/src/merger_test.go index 32a1228a..f79da09a 100644 --- a/src/merger_test.go +++ b/src/merger_test.go @@ -1,6 +1,7 @@ package fzf import ( + "fmt" "math/rand" "sort" "testing" @@ -13,8 +14,17 @@ func assert(t *testing.T, cond bool, msg ...string) { } func randItem() *Item { + str := fmt.Sprintf("%d", rand.Uint32()) + offsets := make([]Offset, rand.Int()%3) + for idx := range offsets { + sidx := int32(rand.Uint32() % 20) + eidx := sidx + int32(rand.Uint32()%20) + offsets[idx] = Offset{sidx, eidx} + } return &Item{ - rank: Rank{uint16(rand.Uint32()), uint16(rand.Uint32()), rand.Uint32()}} + text: &str, + index: rand.Uint32(), + offsets: offsets} } func TestEmptyMerger(t *testing.T) { -- cgit v1.2.3