test gamemaster init

master^2
bel 2020-05-02 15:09:20 -06:00
parent 340873205b
commit 8971426dcd
6 changed files with 42 additions and 16 deletions

View File

@ -1,12 +1,13 @@
#[derive(Debug)] use super::super::super::model::state::room::Room;
pub struct GameMaster { pub struct GameMaster {
room_id: String, room: Box<dyn Room>,
} }
impl GameMaster { impl GameMaster {
fn new() -> GameMaster { fn new(room: Box<dyn Room>) -> GameMaster {
GameMaster{ GameMaster{
room_id: "hello".to_string(), room: room,
} }
} }
} }
@ -14,10 +15,32 @@ impl GameMaster {
#[cfg(test)] #[cfg(test)]
mod tests { mod tests {
use super::*; use super::*;
use super::super::super::super::model::state::mockroom::MockRoom;
use super::super::super::super::model::state::mockrooms::MockRooms;
use super::super::super::super::model::state::rooms::Rooms;
#[test] #[test]
fn new() { fn new_mockroom() {
let gm = GameMaster::new(); let _ = GameMaster::new(Box::new(MockRoom::create()));
println!("made: {:?}", gm); println!("made");
}
#[test]
fn new_rooms_mockrooms() {
fn get() -> impl Rooms {
let mrs = MockRooms::new();
mrs
}
let mut mrs = get();
let r = mrs.create();
let _ = GameMaster::new(r);
}
#[test]
fn new_mockrooms() {
let mut mrs = MockRooms::new();
let r = mrs.create();
let _ = GameMaster::new(r);
} }
} }

View File

@ -1 +1 @@
mod gamemaster; pub mod gamemaster;

View File

@ -1 +1 @@
mod gamemaster; pub mod gamemaster;

View File

@ -1 +1 @@
mod state; pub mod state;

View File

@ -1,5 +1,5 @@
mod event; pub mod event;
mod room; pub mod room;
mod rooms; pub mod rooms;
mod mockroom; pub mod mockroom;
mod mockrooms; pub mod mockrooms;

View File

@ -8,6 +8,7 @@ pub trait Rooms {
#[cfg(test)] #[cfg(test)]
mod tests { mod tests {
use super::Rooms; use super::Rooms;
use super::Room;
use super::super::mockrooms::MockRooms; use super::super::mockrooms::MockRooms;
#[test] #[test]
@ -16,6 +17,8 @@ mod tests {
let r = MockRooms::new(); let r = MockRooms::new();
r r
} }
gen(); let mut rooms = gen();
let mut room_ptr: Box<dyn Room> = rooms.create();
assert!(room_ptr.send("hi".to_string()).is_ok());
} }
} }