From c8fd3b87aca7794afb7f07b3aa26b770ef4fd3f4 Mon Sep 17 00:00:00 2001 From: Bruno Raoult Date: Mon, 22 Jul 2024 09:03:31 +0200 Subject: [PATCH] add Rodent-III FEN tests --- test/common-test.h | 74 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 74 insertions(+) diff --git a/test/common-test.h b/test/common-test.h index 06940ea..1a788e3 100644 --- a/test/common-test.h +++ b/test/common-test.h @@ -400,6 +400,80 @@ struct fentest { "simple movedo/undo: only 2 W knights", "5n2/1k6/8/8/5K2/8/P7/1N6 w - - 0 1" }, + + /***************************************************** + * test from Rodent III * + * https://github.com/nescitus/sources/src/uci.c * + * "taken from DiscoCheck by Lucas Braeschcoming" * + *****************************************************/ + { __LINE__, MOVEDO | PERFT, + "1.e4 c5 2.Nf3 Nc6", + "r1bqkbnr/pp1ppppp/2n5/2p5/4P3/5N2/PPPP1PPP/RNBQKB1R w KQkq -", + }, + { __LINE__, MOVEDO | PERFT, + "multiple captures", + "r3k2r/p1ppqpb1/bn2pnp1/3PN3/1p2P3/2N2Q1p/PPPBBPPP/R3K2R w KQkq -", + }, + { __LINE__, MOVEDO | PERFT, + "rook endgame", + "8/2p5/3p4/KP5r/1R3p1k/8/4P1P1/8 w - -", + }, + { __LINE__, MOVEDO | PERFT, + "", + "4rrk1/pp1n3p/3q2pQ/2p1pb2/2PP4/2P3N1/P2B2PP/4RRK1 b - - 7 19", + }, + { __LINE__, MOVEDO | PERFT, + "knight pseudo-sack", + "rq3rk1/ppp2ppp/1bnpb3/3N2B1/3NP3/7P/PPPQ1PP1/2KR3R w - - 7 14", + }, + { __LINE__, MOVEDO | PERFT, + "pawn chain", + "r1bq1r1k/1pp1n1pp/1p1p4/4p2Q/4Pp2/1BNP4/PPP2PPP/3R1RK1 w - - 2 14", + }, + { __LINE__, MOVEDO | PERFT, + "", + "r3r1k1/2p2ppp/p1p1bn2/8/1q2P3/2NPQN2/PPP3PP/R4RK1 b - - 2 15", + }, + { __LINE__, MOVEDO | PERFT, + "", + "r1bbk1nr/pp3p1p/2n5/1N4p1/2Np1B2/8/PPP2PPP/2KR1B1R w kq - 0 13", + }, + { __LINE__, MOVEDO | PERFT, + "attack for pawn", + "r1bq1rk1/ppp1nppp/4n3/3p3Q/3P4/1BP1B3/PP1N2PP/R4RK1 w - - 1 16", + }, + { __LINE__, MOVEDO | PERFT, + "exchange sack", + "4r1k1/r1q2ppp/ppp2n2/4P3/5Rb1/1N1BQ3/PPP3PP/R5K1 w - - 1 17", + }, + { __LINE__, MOVEDO | PERFT, + "", + "2rqkb1r/ppp2p2/2npb1p1/1N1Nn2p/2P1PP2/8/PP2B1PP/R1BQK2R b KQ - 0 11", + }, + { __LINE__, MOVEDO | PERFT, + "white pawn center", + "r1bq1r1k/b1p1npp1/p2p3p/1p6/3PP3/1B2NN2/PP3PPP/R2Q1RK1 w - - 1 16", + }, + { __LINE__, MOVEDO | PERFT, + "", + "3r1rk1/p5pp/bpp1pp2/8/q1PP1P2/b3P3/P2NQRPP/1R2B1K1 b - - 6 22", + }, + { __LINE__, MOVEDO | PERFT, + "", + "r1q2rk1/2p1bppp/2Pp4/p6b/Q1PNp3/4B3/PP1R1PPP/2K4R w - - 2 18", + }, + { __LINE__, MOVEDO | PERFT, + "endgame", + "4k2r/1pb2ppp/1p2p3/1R1p4/3P4/2r1PN2/P4PPP/1R4K1 b - - 3 22", + }, + { __LINE__, MOVEDO | PERFT, + "both queens en-prise", + "3q2k1/pb3p1p/4pbp1/2r5/PpN2N2/1P2P2P/5PP1/Q2R2K1 b - - 4 26", + }, + + /***************************************************** + * broken FEN * + *****************************************************/ { __LINE__, FEN, "legal EP", "4k3/8/8/3pP3/8/8/8/4K3 w - d6 0 1"