This commit is contained in:
LinlyBoi
2023-05-01 00:26:44 +03:00
parent 46be26af76
commit f863fe7485

View File

@@ -1,17 +1,68 @@
use crate::gamedata::Board; use crate::gamedata::{
score_checkers::{one_direction, Direction},
Board,
};
use super::Disk; use super::Disk;
#[test] // #[test]
fn board_default() { // fn board_default() {
assert_eq!(7, Board::default().columns.len()) // unimplemented!()
} // }
#[test] #[test]
fn play() { fn play() {
let mut board = Board::default(); let mut board = Board::default();
assert!(board.columns.get(0).expect("Nah").is_empty()); assert!(board.play(Disk::BLUE, 0));
board.play(Disk::BLUE, 0); assert!(board.play(Disk::BLUE, 0));
assert_eq!(1, board.columns[0].len()); assert!(board.play(Disk::BLUE, 0));
board.play(Disk::RED, 0); assert!(board.play(Disk::BLUE, 0));
assert_eq!(2, board.columns[0].len()); assert!(board.play(Disk::BLUE, 0));
assert!(board.play(Disk::BLUE, 0));
assert!(board.play(Disk::BLUE, 0));
assert!(!board.play(Disk::BLUE, 0));
assert!(board.play(Disk::BLUE, 1));
assert!(board.play(Disk::BLUE, 1));
assert!(board.play(Disk::BLUE, 1));
assert!(board.play(Disk::BLUE, 1));
assert!(board.play(Disk::BLUE, 1));
assert!(board.play(Disk::BLUE, 1));
assert!(board.play(Disk::BLUE, 1));
assert!(!board.play(Disk::BLUE, 1));
assert!(board.play(Disk::BLUE, 2));
assert!(board.play(Disk::BLUE, 2));
assert!(board.play(Disk::BLUE, 2));
assert!(board.play(Disk::BLUE, 2));
assert!(board.play(Disk::BLUE, 2));
assert!(board.play(Disk::BLUE, 2));
assert!(board.play(Disk::BLUE, 2));
assert!(!board.play(Disk::BLUE, 2));
assert!(board.play(Disk::BLUE, 3));
assert!(board.play(Disk::BLUE, 3));
assert!(board.play(Disk::BLUE, 3));
assert!(board.play(Disk::BLUE, 3));
assert!(board.play(Disk::BLUE, 3));
assert!(board.play(Disk::BLUE, 3));
assert!(board.play(Disk::BLUE, 3));
assert!(!board.play(Disk::BLUE, 3));
}
#[test]
fn one_direction_test() {
let mut board_true = Board::default();
let board_false = Board::default();
board_true.play(Disk::BLUE, 0);
board_true.play(Disk::BLUE, 0);
board_true.play(Disk::BLUE, 0);
board_true.play(Disk::BLUE, 0);
assert_eq!(
1,
one_direction(&board_true.columns, &(3, 0), Direction::BACKWARD)
);
assert_eq!(
0,
one_direction(&board_false.columns, &(3, 0), Direction::BACKWARD)
);
} }