From d9c15273c5020b69cd1d644648a0d74929029cdb Mon Sep 17 00:00:00 2001 From: Mashy Date: Thu, 12 Dec 2019 16:56:02 +1000 Subject: [PATCH] tick speed tests --- core/fixme.md | 2 ++ core/src/game.rs | 34 ++++++++++++++++++++++++++++++++++ 2 files changed, 36 insertions(+) diff --git a/core/fixme.md b/core/fixme.md index 21fded94..e5c25e0a 100644 --- a/core/fixme.md +++ b/core/fixme.md @@ -2,3 +2,5 @@ check silence skill multiplier game ready not auto starting resolve phase purify conditional healing + +set static speed for dot ticks \ No newline at end of file diff --git a/core/src/game.rs b/core/src/game.rs index 7126b01b..c0e00f58 100644 --- a/core/src/game.rs +++ b/core/src/game.rs @@ -1890,4 +1890,38 @@ mod tests { // 320 base blue power and 125 base blue life } == 320.pct(Skill::Blast.multiplier()) - 125); } + +/* + #[test] + fn tick_speed_tests() { + let mut game = create_2v2_test_game(); + let player_id = game.players[0].id; + let source = game.players[0].constructs[0].id; + let target = game.players[1].constructs[0].id; + + game.resolve(Cast::new(source, player_id, target, Skill::Decay), vec![]); + game.resolve(Cast::new(source, player_id, target, Skill::Siphon), vec![]); + + game = game.resolve_phase_start(); + + let last = game.resolutions.len() - 1; + let resolutions = &game.resolutions[last]; + assert!(Skill::DecayTick == resolutions[0].skill); + + // Check speed ticks are static after they're cast + game = create_2v2_test_game(); + let player_id = game.players[0].id; + let source = game.players[0].constructs[0].id; + let target = game.players[1].constructs[0].id; + + game.resolve(Cast::new(source, player_id, target, Skill::Decay), vec![]); + game.resolve(Cast::new(source, player_id, source, Skill::HastePlusPlus), vec![]); + game.resolve(Cast::new(source, player_id, target, Skill::Siphon), vec![]); + + game = game.resolve_phase_start(); + + let last = game.resolutions.len() - 1; + let resolutions = &game.resolutions[last]; + assert!(Skill::SiphonTick == resolutions[0].skill); + }*/ }