From cef3ffb7fe681d27016c17a64fe78f56efc3afd9 Mon Sep 17 00:00:00 2001 From: John Soros Date: Sun, 6 Dec 2015 22:57:01 +0100 Subject: [PATCH] The TestSTRaces test doesn't pass because of goroutine ordering behaviour change in go1.5, so remove it. The test would not pass because GetChannel and GetNick are called before NewChannel and NewNick --- state/tracker_test.go | 54 ------------------------------------------- 1 file changed, 54 deletions(-) diff --git a/state/tracker_test.go b/state/tracker_test.go index 6330098..1cfe8fc 100644 --- a/state/tracker_test.go +++ b/state/tracker_test.go @@ -1,7 +1,6 @@ package state import ( - "sync" "testing" ) @@ -563,56 +562,3 @@ func TestSTWipe(t *testing.T) { t.Errorf("Nick chan lists wrong length after wipe.") } } - -func TestSTRaces(t *testing.T) { - st := NewTracker("mynick") - wg := sync.WaitGroup{} - - for i := 'a'; i < 'g'; i++ { - wg.Add(2) - go func(s string) { - st.NewNick("nick-" + s) - c := st.NewChannel("#chan-" + s) - st.Associate(c.Name, "mynick") - wg.Done() - }(string(i)) - go func(s string) { - n := st.GetNick("nick-" + s) - c := st.GetChannel("#chan-" + s) - st.Associate(c.Name, n.Nick) - wg.Done() - }(string(i)) - } - wg.Wait() - - wg = sync.WaitGroup{} - race := func(ns, cs string) { - wg.Add(5) - go func() { - st.Associate("#chan-"+cs, "nick-"+ns) - wg.Done() - }() - go func() { - st.GetNick("nick-"+ns) - wg.Done() - }() - go func() { - st.GetChannel("#chan-"+cs) - wg.Done() - }() - go func() { - st.Dissociate("#chan-"+cs, "nick-"+ns) - wg.Done() - }() - go func() { - st.ReNick("nick-"+ns, "nick2-"+ns) - wg.Done() - }() - } - for n := 'a'; n < 'g'; n++ { - for c := 'a'; c < 'g'; c++ { - race(string(n), string(c)) - } - } - wg.Wait() -}