Fix Pieces unit tests
This commit is contained in:
parent
c3e3ebfa97
commit
c79c05ddb6
1 changed files with 13 additions and 18 deletions
|
@ -38,7 +38,7 @@ impl<'a> Iterator for Pieces<'a> {
|
|||
}
|
||||
|
||||
let mut current_shape: Option<Shape> = None;
|
||||
let mut next_nonempty_bitboard: Option<&BitBoard> = None;
|
||||
let mut next_nonempty_bitboard: Option<BitBoard> = None;
|
||||
|
||||
while let Some(shape) = self.shape_iterator.next() {
|
||||
let piece = Piece::new(self.color, *shape);
|
||||
|
@ -80,12 +80,8 @@ mod tests {
|
|||
use crate::Square;
|
||||
use std::collections::HashSet;
|
||||
|
||||
fn square_at(sq: &str) -> Square {
|
||||
Square::from_algebraic_str(sq).expect(sq)
|
||||
}
|
||||
|
||||
fn place_piece_in_position(pos: &mut Position, sq: &str, piece: Piece) {
|
||||
pos.place_piece(&piece, &square_at(sq))
|
||||
fn place_piece_in_position(pos: &mut Position, piece: Piece, sq: Square) {
|
||||
pos.place_piece(piece, sq)
|
||||
.expect("Unable to place {piece:?} queen on {sq}");
|
||||
}
|
||||
|
||||
|
@ -98,11 +94,10 @@ mod tests {
|
|||
|
||||
#[test]
|
||||
fn one() {
|
||||
let sq = Square::from_algebraic_str("e4").expect("e4");
|
||||
let sq = Square::E4;
|
||||
|
||||
let mut pos = Position::empty();
|
||||
pos.place_piece(&Piece::new(Color::White, Shape::Queen), &sq)
|
||||
.expect("Unable to place white queen on e4");
|
||||
place_piece_in_position(&mut pos, Piece::new(Color::White, Shape::Queen), Square::E4);
|
||||
println!("{:?}", &pos);
|
||||
|
||||
let mut pieces = pos.pieces(Color::White);
|
||||
|
@ -117,18 +112,18 @@ mod tests {
|
|||
fn multiple_pieces() {
|
||||
let mut pos = Position::empty();
|
||||
|
||||
place_piece_in_position(&mut pos, "e4", Piece::new(Color::White, Shape::Queen));
|
||||
place_piece_in_position(&mut pos, "e1", Piece::new(Color::White, Shape::King));
|
||||
place_piece_in_position(&mut pos, "b2", Piece::new(Color::White, Shape::Pawn));
|
||||
place_piece_in_position(&mut pos, "c2", Piece::new(Color::White, Shape::Pawn));
|
||||
place_piece_in_position(&mut pos, Piece::new(Color::White, Shape::Queen), Square::E4);
|
||||
place_piece_in_position(&mut pos, Piece::new(Color::White, Shape::King), Square::E1);
|
||||
place_piece_in_position(&mut pos, Piece::new(Color::White, Shape::Pawn), Square::B2);
|
||||
place_piece_in_position(&mut pos, Piece::new(Color::White, Shape::Pawn), Square::C2);
|
||||
|
||||
println!("{:?}", &pos);
|
||||
|
||||
let expected_placed_pieces = HashSet::from([
|
||||
PlacedPiece::new(Piece::new(Color::White, Shape::Queen), square_at("e4")),
|
||||
PlacedPiece::new(Piece::new(Color::White, Shape::King), square_at("e1")),
|
||||
PlacedPiece::new(Piece::new(Color::White, Shape::Pawn), square_at("b2")),
|
||||
PlacedPiece::new(Piece::new(Color::White, Shape::Pawn), square_at("c2")),
|
||||
PlacedPiece::new(Piece::new(Color::White, Shape::Queen), Square::E4),
|
||||
PlacedPiece::new(Piece::new(Color::White, Shape::King), Square::E1),
|
||||
PlacedPiece::new(Piece::new(Color::White, Shape::Pawn), Square::B2),
|
||||
PlacedPiece::new(Piece::new(Color::White, Shape::Pawn), Square::C2),
|
||||
]);
|
||||
|
||||
let placed_pieces = HashSet::from_iter(pos.pieces(Color::White));
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue