[board, explorer, moves] Make Board::active_color private
Make the struct attribute private, and export two new methods. A getter, active_color(), and a setter, set_active_color(). Update all references to the attribute to use the methods.
This commit is contained in:
parent
cae93cb090
commit
eaab34587c
10 changed files with 55 additions and 40 deletions
|
@ -69,7 +69,7 @@ impl<T: BoardProvider> UnmakeMove for T {
|
|||
}
|
||||
|
||||
let board = self.board_mut();
|
||||
board.active_color = record.color;
|
||||
board.set_active_color(record.color);
|
||||
board.en_passant_target = record.en_passant_target;
|
||||
board.castling_rights = record.castling_rights;
|
||||
board.half_move_clock = record.half_move_clock;
|
||||
|
@ -238,14 +238,14 @@ mod tests {
|
|||
// Verify move was made
|
||||
assert_eq!(board.get_piece(Square::C2), None);
|
||||
assert_eq!(board.get_piece(Square::C3), Some(piece!(White Pawn)));
|
||||
assert_eq!(board.active_color, Color::Black);
|
||||
assert_eq!(board.active_color(), Color::Black);
|
||||
|
||||
board.unmake_move(&record)?;
|
||||
|
||||
// Verify original state restored
|
||||
assert_eq!(board.get_piece(Square::C2), Some(piece!(White Pawn)));
|
||||
assert_eq!(board.get_piece(Square::C3), None);
|
||||
assert_eq!(board.active_color, Color::White);
|
||||
assert_eq!(board.active_color(), Color::White);
|
||||
|
||||
Ok(())
|
||||
}
|
||||
|
@ -261,7 +261,7 @@ mod tests {
|
|||
assert_eq!(board.get_piece(Square::E2), None);
|
||||
assert_eq!(board.get_piece(Square::E4), Some(piece!(White Pawn)));
|
||||
assert_eq!(board.en_passant_target, Some(Square::E3));
|
||||
assert_eq!(board.active_color, Color::Black);
|
||||
assert_eq!(board.active_color(), Color::Black);
|
||||
|
||||
board.unmake_move(&record)?;
|
||||
|
||||
|
@ -269,7 +269,7 @@ mod tests {
|
|||
assert_eq!(board.get_piece(Square::E2), Some(piece!(White Pawn)));
|
||||
assert_eq!(board.get_piece(Square::E4), None);
|
||||
assert_eq!(board.en_passant_target, None);
|
||||
assert_eq!(board.active_color, Color::White);
|
||||
assert_eq!(board.active_color(), Color::White);
|
||||
|
||||
Ok(())
|
||||
}
|
||||
|
@ -288,14 +288,14 @@ mod tests {
|
|||
assert_eq!(board.get_piece(Square::C2), None);
|
||||
assert_eq!(board.get_piece(Square::F5), Some(piece!(White Bishop)));
|
||||
assert_eq!(record.captured_piece, Some(piece!(Black Rook)));
|
||||
assert_eq!(board.active_color, Color::Black);
|
||||
assert_eq!(board.active_color(), Color::Black);
|
||||
|
||||
board.unmake_move(&record)?;
|
||||
|
||||
// Verify original state restored
|
||||
assert_eq!(board.get_piece(Square::C2), Some(piece!(White Bishop)));
|
||||
assert_eq!(board.get_piece(Square::F5), Some(piece!(Black Rook)));
|
||||
assert_eq!(board.active_color, Color::White);
|
||||
assert_eq!(board.active_color(), Color::White);
|
||||
|
||||
Ok(())
|
||||
}
|
||||
|
@ -335,7 +335,7 @@ mod tests {
|
|||
Some(piece!(White Pawn)),
|
||||
"captured pawn was not restored"
|
||||
);
|
||||
assert_eq!(board.active_color, Color::Black);
|
||||
assert_eq!(board.active_color(), Color::Black);
|
||||
|
||||
Ok(())
|
||||
}
|
||||
|
@ -352,14 +352,14 @@ mod tests {
|
|||
// Verify promotion was made
|
||||
assert_eq!(board.get_piece(Square::F7), None);
|
||||
assert_eq!(board.get_piece(Square::F8), Some(piece!(White Queen)));
|
||||
assert_eq!(board.active_color, Color::Black);
|
||||
assert_eq!(board.active_color(), Color::Black);
|
||||
|
||||
board.unmake_move(&record)?;
|
||||
|
||||
// Verify original pawn is restored
|
||||
assert_eq!(board.get_piece(Square::F7), Some(piece!(White Pawn)));
|
||||
assert_eq!(board.get_piece(Square::F8), None);
|
||||
assert_eq!(board.active_color, Color::White);
|
||||
assert_eq!(board.active_color(), Color::White);
|
||||
|
||||
Ok(())
|
||||
}
|
||||
|
@ -384,7 +384,7 @@ mod tests {
|
|||
// Verify original state restored
|
||||
assert_eq!(board.get_piece(Square::F7), Some(piece!(White Pawn)));
|
||||
assert_eq!(board.get_piece(Square::G8), Some(piece!(Black Rook)));
|
||||
assert_eq!(board.active_color, Color::White);
|
||||
assert_eq!(board.active_color(), Color::White);
|
||||
|
||||
Ok(())
|
||||
}
|
||||
|
@ -418,7 +418,7 @@ mod tests {
|
|||
assert_eq!(board.get_piece(Square::G1), None);
|
||||
assert_eq!(board.get_piece(Square::F1), None);
|
||||
assert_eq!(board.castling_rights, original_castling_rights);
|
||||
assert_eq!(board.active_color, Color::White);
|
||||
assert_eq!(board.active_color(), Color::White);
|
||||
|
||||
Ok(())
|
||||
}
|
||||
|
@ -452,7 +452,7 @@ mod tests {
|
|||
assert_eq!(board.get_piece(Square::C1), None);
|
||||
assert_eq!(board.get_piece(Square::D1), None);
|
||||
assert_eq!(board.castling_rights, original_castling_rights);
|
||||
assert_eq!(board.active_color, Color::White);
|
||||
assert_eq!(board.active_color(), Color::White);
|
||||
|
||||
Ok(())
|
||||
}
|
||||
|
@ -463,7 +463,7 @@ mod tests {
|
|||
Black King on E8,
|
||||
Black Rook on H8,
|
||||
];
|
||||
board.active_color = Color::Black;
|
||||
board.set_active_color(Color::Black);
|
||||
|
||||
let original_castling_rights = board.castling_rights;
|
||||
|
||||
|
@ -484,7 +484,7 @@ mod tests {
|
|||
assert_eq!(board.get_piece(Square::G8), None);
|
||||
assert_eq!(board.get_piece(Square::F8), None);
|
||||
assert_eq!(board.castling_rights, original_castling_rights);
|
||||
assert_eq!(board.active_color, Color::Black);
|
||||
assert_eq!(board.active_color(), Color::Black);
|
||||
|
||||
Ok(())
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue