package board import ( "math/rand" "testing" ) var testBoard = `~~~~~~~~▲▲▲~▲▲~~*~*~~**~*▲****▲▲***▲~▲***~~▲~~▲~▲~~~~~▲~ ▲~~~~▲~~~~~~~~~~~▲▲▲*~▲▲*▲▲***▲*▲*~▲▲▲~**~▲~~~~~~~~~▲~▲~ ~~~~~~~~~~▲~~~▲~▲~~**▲~~*~**▲▲**▲~*▲~***▲▲~▲~~~~~▲~~~▲▲~ ~~▲~~~~~~▲~~~~▲▲*~~*▲~****▲▲*****▲*~****▲▲~▲~~~~~▲~~~~~~ ~▲~~~~~▲▲~~~~~~~~▲▲~~▲*▲*~*▲▲****▲*▲**~**~~~▲~~~~~~~~~~~ ~~▲~~▲▲▲~~~~~▲~▲~*~******▲▲*▲*****~*~~***~~~~~▲~~~~~~~~~ ▲~~~~~~~~▲▲~▲~~▲▲****~~**~***▲****▲*~~~*~~▲~▲~▲~~~~~~▲▲▲ ▲~~~~~~~~▲~~~~~~~**~***▲**~**~~****~*▲*~~~~▲~~▲~~~~~~~~~ ~~▲~▲~~▲~~~~~~~~~***▲**********~~**▲***~*~~~▲▲~~~▲~~▲~~▲ ▲~~~~~▲~~~~▲~▲~~*~*~~*******▲***▲**▲▲*~~~~~~▲~▲~~~~~▲▲~~ ~▲~~~~~~~~~▲~~~~****▲~*▲**▲****▲▲**~*▲***~~▲▲~▲▲▲~~~~▲~~ ~▲~▲~~~~~▲~~~~~▲**▲**~*~▲*~***▲▲*~*▲***~~~~~~~~~~~~~~~~~ ~▲~~▲~~~▲~▲~▲~~▲*~~▲*~▲**▲▲***▲▲**~*~**~~~~▲▲▲▲~~~~~~~~~ ▲~▲~~▲▲~~▲~~~▲~~~~********▲▲▲▲***▲*~***▲▲~~~~▲~~~~~~~▲~~ ~▲~~~~▲▲~~~~~▲~~▲*~*▲▲*▲****▲▲******▲*~~*~~~~▲~~~~~~~▲~~ ~~~~~~~~~~~~~~▲▲~▲~******▲*▲*▲**~*~*~**~*~~~~~~~~▲▲~~~~▲ ~~▲▲~~~~~~~~~~~▲***▲~*▲**▲*~***▲*********~~~~▲▲~~~~~▲~~~ ~~▲~~~~~~▲▲▲~~~~*~~▲~*~▲*▲*▲*****▲**▲~*▲*~▲~~~~▲▲~▲~~~~⌂ ~~~~~~~▲~~~▲▲~~~*~▲**~**▲*▲*▲***▲**▲*****~~~~▲~~~~~~~▲~~ ~~▲~~~~▲~~~~~▲~~~*~********▲**▲*~*▲*▲**▲~~~~~~~~~~~~~~▲~ ~~~~~~~~~~~~~~▲~*~*~~****~~**▲*****▲**~*~~~▲~▲~~▲~~~▲~~▲ ~▲~~~▲~▲▲~~~~~~~~*~**~~*▲**▲*▲▲***~******~▲~~~~~~▲~~~~~~ ~~~~~~~~▲~~~~~~~~*▲**▲*▲***▲▲**▲~***~▲*~*~~▲~~~~~▲~~~~~~ ~~~~▲~▲~~▲~~▲▲~~**~▲*******~***~▲~**~*~~▲~~~~~~~~▲~~~~~~ ~~▲~~~~~~~~~~~~~**~▲**~***~**▲***▲*~*▲▲*~~~~▲▲~~~~~~~▲~~ ~~~~▲~~~▲~~▲▲~▲~▲▲*▲*▲*▲**▲**▲*~******▲*▲▲~~~~~~~~~~~▲~~ ~~~▲~~~~~~~~~~~~*~~▲▲▲▲▲*******~**▲▲*~▲*~~~~~~~~~~▲~~~▲~ ▲~~~~~~▲~~~~▲~~~*▲▲▲****▲▲****▲***▲~▲▲▲*▲~~~~~~~~▲~~~~~~ ~~~~~▲~▲~~~~~~~~*~~*****▲********~~~~▲**~~~▲▲~~~~▲~~~~~~ ~~▲~~~▲~~~▲~~▲~▲▲▲******▲*******▲***▲▲***~~~~~~~~~~~▲~▲~ ~▲~▲~~~~~~▲~~~~▲*~~***~~~*****▲**▲~*~*~~~~▲▲~~~~~~▲~~~~~ ~~~▲~~~~~~~~~~~~~▲**~*~*▲*▲▲**▲~▲*****▲**▲~~~~~~▲~~▲~~~▲ ▲~▲~~~▲~▲▲▲~~~~▲~*~▲~~▲▲▲**▲********▲***~~~~~▲~~~▲~~~~~~ ~~~~▲~~~~~~▲~~~~~▲~*▲*▲*******▲**▲**▲~~*~~▲~~~~~~~~~▲▲~~ ▲~▲~▲~~▲▲~~~~~~~~▲~**▲******▲********▲~**~▲▲~~~~▲▲~~▲~~▲ ` func TestNewBoard(t *testing.T) { rand.Seed(0) b := New(56, 35) if testBoard != b.String() { t.Fatalf("Incorrect board:\n %v", b) } } func BenchmarkNew(b *testing.B) { for i := 0; i < b.N; i++ { rand.Seed(0) New(56, 35) } } func BenchmarkRnd(b *testing.B) { for i := 0; i < b.N; i++ { rand.Seed(0) for j := 0; j < 56*35; j++ { rand.Intn(10) } } }