Compare commits
2 Commits
0a34deb630
...
08e8656ecf
| Author | SHA1 | Date | |
|---|---|---|---|
| 08e8656ecf | |||
| 73ffef76b0 |
@@ -3,31 +3,13 @@ use klondike::Klondike;
|
|||||||
#[test]
|
#[test]
|
||||||
fn test_is_winnable() {
|
fn test_is_winnable() {
|
||||||
// is winnable
|
// is winnable
|
||||||
let is_winnable = Session::new_default(Klondike::with_seed(123)).is_winnable();
|
let is_winnable = Session::new_default(Klondike::with_seed(124)).is_winnable();
|
||||||
println!("is_winnable = {is_winnable:?}");
|
if let Some(win_moves) = is_winnable {
|
||||||
}
|
// for (i, ins) in win_moves.into_iter().enumerate() {
|
||||||
#[test]
|
// println!("{i} = {:?}", ins.instruction());
|
||||||
fn test_klondike() {
|
// }
|
||||||
// create game session
|
println!("Game is winnable with {} moves", win_moves.len());
|
||||||
let game = Klondike::with_seed(123);
|
} else {
|
||||||
let mut session = Session::new_default(game);
|
println!("Game is not winnable");
|
||||||
|
|
||||||
// is winnable
|
|
||||||
let is_winnable = session.is_winnable();
|
|
||||||
println!("is_winnable = {is_winnable:?}");
|
|
||||||
|
|
||||||
// play game
|
|
||||||
while let Some(instruction) = session.possible_instructions().next() {
|
|
||||||
session.process_instruction(instruction);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// did win
|
|
||||||
let is_win = session.is_win();
|
|
||||||
|
|
||||||
// print session history
|
|
||||||
for (i, instruction) in session.history().iter().enumerate() {
|
|
||||||
println!("move {i} = {instruction:?}");
|
|
||||||
}
|
|
||||||
|
|
||||||
println!("is_win = {is_win}");
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -533,6 +533,10 @@ impl Iterator for KlondikeIter {
|
|||||||
instruction
|
instruction
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
#[test]
|
||||||
|
fn test_klondike_iter() {
|
||||||
|
assert_eq!(KlondikeIter::new().count(), 721);
|
||||||
|
}
|
||||||
|
|
||||||
#[derive(Clone, Debug, Eq, Hash, PartialEq)]
|
#[derive(Clone, Debug, Eq, Hash, PartialEq)]
|
||||||
pub struct Klondike {
|
pub struct Klondike {
|
||||||
|
|||||||
Reference in New Issue
Block a user