new_random_default

This commit is contained in:
2026-05-15 08:55:58 -07:00
parent 78a5b9cc3d
commit f18e8b9b1a
4 changed files with 5 additions and 6 deletions
+1 -2
View File
@@ -11,8 +11,7 @@ use card_game::card_game::{Session, Game};
use card_game::klondike::Klondike;
// create game session
let seed = Rng::default();
let game = Klondike::new(seed.clone(), Default::default());
let game = Klondike::new_random_default();
let mut session = Session::new(game);
// is winnable
-2
View File
@@ -1,5 +1,3 @@
use crate::Rng;
// TODO: pub struct ValidInstruction<I>(I);
pub trait Game {
type Instruction;
+3
View File
@@ -164,6 +164,9 @@ pub struct Klondike {
state: KlondikeState,
}
impl Klondike {
pub fn new_random_default() -> Self {
Self::new(Rng::default(), KlondikeConfig::default())
}
pub fn new(mut seed: Rng, config: KlondikeConfig) -> Self {
// shuffle a new deck
let mut deck = Stack::full_deck(0);
+1 -2
View File
@@ -1,11 +1,10 @@
#[test]
fn test_klondike() {
use crate::Rng;
use crate::card_game::{Game, Session};
use crate::klondike::Klondike;
// create game session
let game = Klondike::new(Rng::default(), Default::default());
let game = Klondike::new_random_default();
let mut session = Session::new(game);
// is winnable