Add bitboard test

This commit is contained in:
2022-12-22 12:10:14 +01:00
parent db23a4c610
commit e620e6f5cb
5 changed files with 28 additions and 2 deletions

22
Tests/BitBoardTest.cpp Normal file
View File

@@ -0,0 +1,22 @@
#include "catch2/catch.hpp"
#include "TestUtils.hpp"
#include "BitBoard.hpp"
#include <set>
#include <iostream>
TEST_CASE("King attacks are correctly generated", "[Board][Fundamental]") {
auto board = BitBoard::fromIndex(G2);
board |= BitBoard::fromIndex(B7);
BitBoard ka = BitBoard::kingAttacks(board);
REQUIRE((ka == (
BitBoard::fromIndex(G1) | BitBoard::fromIndex(G3) | BitBoard::fromIndex(H1) | BitBoard::fromIndex(H2)
| BitBoard::fromIndex(H3) | BitBoard::fromIndex(F1) | BitBoard::fromIndex(F2)
| BitBoard::fromIndex(F3) |
BitBoard::fromIndex(B8) | BitBoard::fromIndex(B6) | BitBoard::fromIndex(A6)
| BitBoard::fromIndex(A7) | BitBoard::fromIndex(A8) | BitBoard::fromIndex(C6)
| BitBoard::fromIndex(C7) | BitBoard::fromIndex(C8))));
}

View File

@@ -8,6 +8,7 @@ add_executable(tests
BoardTests.cpp
FenTests.cpp
EngineTests.cpp
BitBoardTest.cpp
)
target_link_libraries(tests cplchess_lib Catch2::Catch2)