]> git.draconx.ca Git - rrace.git/blobdiff - tests/game.at
tests: Skip reference RNG test on old compilers.
[rrace.git] / tests / game.at
index 4d367afd9a1e3f4ced0cb0f650fb52a97681158b..7084f6fd0078bf59cb11f020a33c8864d49a8009 100644 (file)
@@ -1,4 +1,4 @@
-# Copyright © 2022 Nick Bowler
+# Copyright © 2022-2024 Nick Bowler
 #
 # This program is free software: you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
@@ -592,13 +592,7 @@ AT_CHECK([boardmove m4_do(
 
 AT_CLEANUP
 
-AT_SETUP([xoshiro256** sanity])
-
-AT_CHECK([rng-test >out
-grep -v '^ok' out], [0], [1..200
-])
-
-AT_CLEANUP
+TEST_TAP_SIMPLE([xoshiro256** sanity], [rng-test])
 
 AT_SETUP([game_check_goal])
 
@@ -629,3 +623,35 @@ AT_DATA([expout],
 AT_CHECK([checkgoal <boards.dat >result.dat && cat result.dat], [0], [expout])
 
 AT_CLEANUP
+
+AT_SETUP([game_overlay_goal])
+
+AT_DATA([boards.dat], [dnl
+0 0 0  0  0  0
+0 0 0 -1  0  0
+0 0 0  0 -1  0
+0 0 0  0  0 -1
+1ffffff 1ffffff 1ffffff 0 0 0
+])
+
+AT_DATA([expout], [dnl
+0000000 0000000 0000000
+00739c0 0000000 0000000
+0000000 00739c0 0000000
+0000000 0000000 00739c0
+1f8c63f 1f8c63f 1f8c63f
+])
+
+AT_CHECK([overlaygoal <boards.dat >result.dat && cat result.dat],
+  [0], [expout])
+
+AT_CLEANUP
+
+# Basic check that we get different initial games if we run the program
+# multiple times in sequence.
+AT_SETUP([game_reset initial seed])
+
+AT_CHECK([initboard >a && initboard >b && initboard >c])
+AT_CHECK([diff a b || diff b c || diff a c || exit 42], [42], [ignore-nolog])
+
+AT_CLEANUP