diff options
Diffstat (limited to 'server/src/play.rs')
-rw-r--r-- | server/src/play.rs | 17 |
1 files changed, 15 insertions, 2 deletions
diff --git a/server/src/play.rs b/server/src/play.rs index 33a14f9..9ea2f42 100644 --- a/server/src/play.rs +++ b/server/src/play.rs @@ -1,5 +1,5 @@ use async_trait::async_trait; -use protocol::{bridge_engine::{self, GameState, Player, Bid, Deal}}; +use protocol::{bridge_engine::{GameState, Player, Bid, Deal}}; use rand::random; use serde::{Deserialize, Serialize}; use serde_json::json; @@ -109,7 +109,7 @@ impl<J: Journal> Table<J> { } async fn init(journal: &mut J) -> Result<GameState, BridgeError> { - let game = GameState::new(random(), Player::East); + let game = GameState::new(random(), random()); journal.append(0, json!(game)).await?; Ok(game) } @@ -132,6 +132,11 @@ impl<J: Journal> Table<J> { } } + +pub fn advance_play<J: Journal>(table: &mut Table<J>) { + todo!() +} + #[cfg(test)] mod test { use super::*; @@ -198,4 +203,12 @@ mod test { let t2 = Table::replay(journal).await.unwrap(); assert_eq!(game, t2.game); } + + #[tokio::test] + async fn test_advance_play() { + let mut t1: Table<TestJournal> = Table::new(Default::default()).await.unwrap(); + let player = t1.game().current_player(); + advance_play(&mut t1); + assert_ne!(player, t1.game().current_player()); + } } |