completed is_square_attacked testing

This commit is contained in:
Moritz 2025-11-14 11:20:44 +01:00
parent e305a3556f
commit 2a100c8b50
2 changed files with 33 additions and 68 deletions

View file

@ -205,71 +205,11 @@ impl fmt::Display for MoveList {
impl fmt::Display for Square {
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
match self {
Square::A1 => write!(f, "A1"),
Square::B1 => write!(f, "B1"),
Square::C1 => write!(f, "C1"),
Square::D1 => write!(f, "D1"),
Square::E1 => write!(f, "E1"),
Square::F1 => write!(f, "F1"),
Square::G1 => write!(f, "G1"),
Square::H1 => write!(f, "H1"),
Square::A2 => write!(f, "A2"),
Square::B2 => write!(f, "B2"),
Square::C2 => write!(f, "C2"),
Square::D2 => write!(f, "D2"),
Square::E2 => write!(f, "E2"),
Square::F2 => write!(f, "F2"),
Square::G2 => write!(f, "G2"),
Square::H2 => write!(f, "H2"),
Square::A3 => write!(f, "A3"),
Square::B3 => write!(f, "B3"),
Square::C3 => write!(f, "C3"),
Square::D3 => write!(f, "D3"),
Square::E3 => write!(f, "E3"),
Square::F3 => write!(f, "F3"),
Square::G3 => write!(f, "G3"),
Square::H3 => write!(f, "H3"),
Square::A4 => write!(f, "A4"),
Square::B4 => write!(f, "B4"),
Square::C4 => write!(f, "C4"),
Square::D4 => write!(f, "D4"),
Square::E4 => write!(f, "E4"),
Square::F4 => write!(f, "F4"),
Square::G4 => write!(f, "G4"),
Square::H4 => write!(f, "H4"),
Square::A5 => write!(f, "A5"),
Square::B5 => write!(f, "B5"),
Square::C5 => write!(f, "C5"),
Square::D5 => write!(f, "D5"),
Square::E5 => write!(f, "E5"),
Square::F5 => write!(f, "F5"),
Square::G5 => write!(f, "G5"),
Square::H5 => write!(f, "H5"),
Square::A6 => write!(f, "A6"),
Square::B6 => write!(f, "B6"),
Square::C6 => write!(f, "C6"),
Square::D6 => write!(f, "D6"),
Square::E6 => write!(f, "E6"),
Square::F6 => write!(f, "F6"),
Square::G6 => write!(f, "G6"),
Square::H6 => write!(f, "H6"),
Square::A7 => write!(f, "A7"),
Square::B7 => write!(f, "B7"),
Square::C7 => write!(f, "C7"),
Square::D7 => write!(f, "D7"),
Square::E7 => write!(f, "E7"),
Square::F7 => write!(f, "F7"),
Square::G7 => write!(f, "G7"),
Square::H7 => write!(f, "H7"),
Square::A8 => write!(f, "A8"),
Square::B8 => write!(f, "B8"),
Square::C8 => write!(f, "C8"),
Square::D8 => write!(f, "D8"),
Square::E8 => write!(f, "E8"),
Square::F8 => write!(f, "F8"),
Square::G8 => write!(f, "G8"),
Square::H8 => write!(f, "H8")
}
let files = ["A", "B", "C", "D", "E", "F", "G", "H"];
let ranks = ["1", "2", "3", "4", "5", "6", "7", "8"];
let square_index = *self as usize;
let file = files[square_index % 8];
let rank = ranks[square_index / 8];
write!(f, "{}{}", file, rank)
}
}

View file

@ -23,5 +23,30 @@ fn test_is_attacked_kiwipete() {
assert_square_attacked(&mut board, Square::E3, true, false);
assert_square_attacked(&mut board, Square::G3, true, false);
// TODO keep going with the rest
assert_square_attacked(&mut board, Square::A4, true, true);
assert_square_attacked(&mut board, Square::C4, true, true);
assert_square_attacked(&mut board, Square::D4, false, false);
assert_square_attacked(&mut board, Square::F4, true, false);
assert_square_attacked(&mut board, Square::G4, true, true);
assert_square_attacked(&mut board, Square::H4, false, true);
assert_square_attacked(&mut board, Square::A5, false, false);
assert_square_attacked(&mut board, Square::B5, true, true);
assert_square_attacked(&mut board, Square::C5, false, true);
assert_square_attacked(&mut board, Square::F5, true, true);
assert_square_attacked(&mut board, Square::G5, true, false);
assert_square_attacked(&mut board, Square::H5, true, true);
assert_square_attacked(&mut board, Square::C6, true, true);
assert_square_attacked(&mut board, Square::D6, false, true);
assert_square_attacked(&mut board, Square::H6, true, true);
assert_square_attacked(&mut board, Square::B7, false, true);
assert_square_attacked(&mut board, Square::H7, false, true);
assert_square_attacked(&mut board, Square::B8, false, true);
assert_square_attacked(&mut board, Square::C8, false, true);
assert_square_attacked(&mut board, Square::D8, false, true);
assert_square_attacked(&mut board, Square::F8, false, true);
assert_square_attacked(&mut board, Square::G8, false, true);
}