diff options
| author | Adam <adammegarules1@gmail.com> | 2026-08-08 18:46:30 +0200 |
|---|---|---|
| committer | Adam <adammegarules1@gmail.com> | 2026-08-08 18:46:30 +0200 |
| commit | 0709c26bcb3f2fc5082a884efb2b7cceef1d058d (patch) | |
| tree | 2fd4304e200d529d7d1dcb65b80f75d2e0bcdee2 /perft.sh | |
| parent | ba097ea9ce636d45ffd8b4085f1971fae54a2f02 (diff) | |
adding tests script
Diffstat (limited to 'perft.sh')
| -rwxr-xr-x | perft.sh | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/perft.sh b/perft.sh new file mode 100755 index 0000000..7bf1043 --- /dev/null +++ b/perft.sh @@ -0,0 +1,32 @@ +#!/usr/bin/env bash + +testPerft() { + local fen="$1" + local depth="$2" + local expected="$3" + + printf "position fen %s\nperft %s\nquit\n" "$fen" "$depth" | ./build/mono + echo "Expected: $expected" + echo "-------------------" +} + +configs=( + # starting pos + "rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR w KQkq - 0 1|1|20" + "rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR w KQkq - 0 1|2|400" + "rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR w KQkq - 0 1|3|8902" + "rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR w KQkq - 0 1|4|197281" + "rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR w KQkq - 0 1|5|4865609" + + # kiwipete + "r3k2r/p1ppqpb1/bn2pnp1/3PN3/1p2P3/2N2Q1p/PPPBBPPP/R3K2R w KQkq -|1|48" + "r3k2r/p1ppqpb1/bn2pnp1/3PN3/1p2P3/2N2Q1p/PPPBBPPP/R3K2R w KQkq -|2|2039" + "r3k2r/p1ppqpb1/bn2pnp1/3PN3/1p2P3/2N2Q1p/PPPBBPPP/R3K2R w KQkq -|3|97862" + "r3k2r/p1ppqpb1/bn2pnp1/3PN3/1p2P3/2N2Q1p/PPPBBPPP/R3K2R w KQkq -|4|4085603" + "r3k2r/p1ppqpb1/bn2pnp1/3PN3/1p2P3/2N2Q1p/PPPBBPPP/R3K2R w KQkq -|5|193690690" +) + +for config in "${configs[@]}"; do + IFS='|' read -r fen depth expected <<< "$config" + testPerft "$fen" "$depth" "$expected" +done
\ No newline at end of file |
