test.sh: add more promotion tests and fixup for case if input is incorrect - chess-puzzles - chess puzzle book generator
(HTM) git clone git://git.codemadness.org/chess-puzzles
(DIR) Log
(DIR) Files
(DIR) Refs
(DIR) README
(DIR) LICENSE
---
(DIR) commit e34a8cc5befa1d22f9468bb9169113acb84ef6f8
(DIR) parent a7b46089306de698b20b0400a8ec9f3ccda3f729
(HTM) Author: Hiltjo Posthuma <hiltjo@codemadness.org>
Date: Sun, 14 Jan 2024 19:17:10 +0100
test.sh: add more promotion tests and fixup for case if input is incorrect
Diffstat:
M tests.sh | 50 +++++++++++++++++++++++++++++++
1 file changed, 50 insertions(+), 0 deletions(-)
---
(DIR) diff --git a/tests.sh b/tests.sh
@@ -256,6 +256,56 @@ testfen 'white is not checkmated (en passant square is set and can be played), r
'rnbqkbnr/p2ppppp/1pP5/1P2P3/2PKQ3/2PQQ3/P1PP1PPP/RNBQ1BNR b kq - 0 1'\
'rnbqkbnr/p2ppppp/1p6/1PpPP3/2PKQ3/2PQQ3/P1PP1PPP/RNBQ1BNR w kq c6 0 1'\
'd5c6'
+
+testfen 'white promote to queen'\
+ 'rnbqkbQr/p1pppp1p/8/8/8/8/PpPPPP1P/R1BQKBNR b KQkq - 0 1'\
+ 'rnbqkb1r/p1ppppPp/8/8/8/8/PpPPPP1P/R1BQKBNR w KQkq - 0 1'\
+ 'g7g8Q'
+
+testfen 'white promote to rook'\
+ 'rnbqkbRr/p1pppp1p/8/8/8/8/PpPPPP1P/R1BQKBNR b KQkq - 0 1'\
+ 'rnbqkb1r/p1ppppPp/8/8/8/8/PpPPPP1P/R1BQKBNR w KQkq - 0 1'\
+ 'g7g8R'
+
+testfen 'white promote to bishop'\
+ 'rnbqkbBr/p1pppp1p/8/8/8/8/PpPPPP1P/R1BQKBNR b KQkq - 0 1'\
+ 'rnbqkb1r/p1ppppPp/8/8/8/8/PpPPPP1P/R1BQKBNR w KQkq - 0 1'\
+ 'g7g8B'
+
+testfen 'white promote to knight'\
+ 'rnbqkbNr/p1pppp1p/8/8/8/8/PpPPPP1P/R1BQKBNR b KQkq - 0 1'\
+ 'rnbqkb1r/p1ppppPp/8/8/8/8/PpPPPP1P/R1BQKBNR w KQkq - 0 1'\
+ 'g7g8N'
+
+testfen 'white promote to knight (fixup lowercase to uppercase)'\
+ 'rnbqkbNr/p1pppp1p/8/8/8/8/PpPPPP1P/R1BQKBNR b KQkq - 0 1'\
+ 'rnbqkb1r/p1ppppPp/8/8/8/8/PpPPPP1P/R1BQKBNR w KQkq - 0 1'\
+ 'g7g8n'
+
+testfen 'black promote to queen'\
+ 'rnbqkb1r/p1ppppPp/8/8/8/8/P1PPPP1P/RqBQKBNR w KQkq - 0 2'\
+ 'rnbqkb1r/p1ppppPp/8/8/8/8/PpPPPP1P/R1BQKBNR b KQkq - 0 1'\
+ 'b2b1q'
+
+testfen 'black promote to rook'\
+ 'rnbqkb1r/p1ppppPp/8/8/8/8/P1PPPP1P/RrBQKBNR w KQkq - 0 2'\
+ 'rnbqkb1r/p1ppppPp/8/8/8/8/PpPPPP1P/R1BQKBNR b KQkq - 0 1'\
+ 'b2b1r'
+
+testfen 'black promote to bishop'\
+ 'rnbqkb1r/p1ppppPp/8/8/8/8/P1PPPP1P/RbBQKBNR w KQkq - 0 2'\
+ 'rnbqkb1r/p1ppppPp/8/8/8/8/PpPPPP1P/R1BQKBNR b KQkq - 0 1'\
+ 'b2b1b'
+
+testfen 'black promote to knight'\
+ 'rnbqkb1r/p1ppppPp/8/8/8/8/P1PPPP1P/RnBQKBNR w KQkq - 0 2'\
+ 'rnbqkb1r/p1ppppPp/8/8/8/8/PpPPPP1P/R1BQKBNR b KQkq - 0 1'\
+ 'b2b1n'
+
+testfen 'black promote to knight (fixup uppercase to lowercase)'\
+ 'rnbqkb1r/p1ppppPp/8/8/8/8/P1PPPP1P/RnBQKBNR w KQkq - 0 2'\
+ 'rnbqkb1r/p1ppppPp/8/8/8/8/PpPPPP1P/R1BQKBNR b KQkq - 0 1'\
+ 'b2b1N'
}
tests_pgn() {