diff options
author | Justin Worthe <justin@worthe-it.co.za> | 2018-07-12 23:41:58 +0200 |
---|---|---|
committer | Justin Worthe <justin@worthe-it.co.za> | 2018-07-12 23:41:58 +0200 |
commit | daa60184c6e52c82008ed375c7a2d4f7e65dfab0 (patch) | |
tree | 7df7ea8fd94448726603617034599c61f245fb84 /tests | |
parent | 03f574e28c2c535a2365b3621bf08e808e75c23b (diff) |
Changed other bitwise stuff to use constants
Diffstat (limited to 'tests')
-rw-r--r-- | tests/expressive_to_bitwise_comparison.rs | 21 | ||||
-rw-r--r-- | tests/live_comparison.rs | 4 |
2 files changed, 13 insertions, 12 deletions
diff --git a/tests/expressive_to_bitwise_comparison.rs b/tests/expressive_to_bitwise_comparison.rs index bdc4a19..ac2cbf0 100644 --- a/tests/expressive_to_bitwise_comparison.rs +++ b/tests/expressive_to_bitwise_comparison.rs @@ -11,6 +11,7 @@ use zombot::engine::{GameState, GameStatus, Player}; use zombot::engine::expressive_engine; use zombot::engine::bitwise_engine; +use zombot::engine::constants::*; use proptest::prelude::*; @@ -123,14 +124,14 @@ fn build_bitwise_from_expressive(expressive: &expressive_engine::ExpressiveGameS .filter(|b| identify_building_type(b.weapon_damage, b.energy_generated_per_turn) == BuildingType::Energy) .fold(0, |acc, next| acc | next.pos.to_right_bitfield()); - let mut player_buildings_iter = (0..4) + let mut player_buildings_iter = (0..DEFENCE_HEALTH as u8) .map(|i| expressive.player_buildings.iter() - .filter(|b| b.health > i*5) + .filter(|b| b.health > i*MISSILE_DAMAGE) .fold(0, |acc, next| acc | next.pos.to_left_bitfield()) ); - let mut opponent_buildings_iter = (0..4) + let mut opponent_buildings_iter = (0..DEFENCE_HEALTH as u8) .map(|i| expressive.opponent_buildings.iter() - .filter(|b| b.health > i*5) + .filter(|b| b.health > i*MISSILE_DAMAGE) .fold(0, |acc, next| acc | next.pos.to_right_bitfield()) ); @@ -143,20 +144,20 @@ fn build_bitwise_from_expressive(expressive: &expressive_engine::ExpressiveGameS expressive.opponent_unconstructed_buildings.iter() .fold(0, |acc, next| acc | next.pos.to_right_bitfield()); - let mut player_attack_iter = (0..4) + let mut player_attack_iter = (0..MISSILE_COOLDOWN as u8 + 1) .map(|i| expressive.player_buildings.iter() .filter(|b| identify_building_type(b.weapon_damage, b.energy_generated_per_turn) == BuildingType::Attack) .filter(|b| b.weapon_cooldown_time_left == i) .fold(0, |acc, next| acc | next.pos.to_left_bitfield()) ); - let mut opponent_attack_iter = (0..4) + let mut opponent_attack_iter = (0..MISSILE_COOLDOWN as u8 + 1) .map(|i| expressive.opponent_buildings.iter() .filter(|b| identify_building_type(b.weapon_damage, b.energy_generated_per_turn) == BuildingType::Attack) .filter(|b| b.weapon_cooldown_time_left == i) .fold(0, |acc, next| acc | next.pos.to_right_bitfield()) ); - let empty_missiles: [(u64,u64);4] = [(0,0),(0,0),(0,0),(0,0)]; + let empty_missiles: [(u64,u64);MISSILE_COOLDOWN+1] = [(0,0),(0,0),(0,0),(0,0)]; let player_missiles = expressive.player_missiles.iter() .fold(empty_missiles, |acc, m| { let (mut left, mut right) = m.pos.to_bitfield(); @@ -240,9 +241,9 @@ fn build_bitwise_unconstructed_from_expressive(b: &expressive_engine::Unconstruc fn identify_building_type(weapon_damage: u8, energy_generated_per_turn: u16) -> BuildingType { match (weapon_damage, energy_generated_per_turn) { - (5, _) => BuildingType::Attack, - (20, _) => BuildingType::Tesla, - (_, 3) => BuildingType::Energy, + (MISSILE_DAMAGE, _) => BuildingType::Attack, + (TESLA_DAMAGE, _) => BuildingType::Tesla, + (_, ENERGY_GENERATED_TOWER) => BuildingType::Energy, _ => BuildingType::Defence } } diff --git a/tests/live_comparison.rs b/tests/live_comparison.rs index 91d3530..2fcc8b5 100644 --- a/tests/live_comparison.rs +++ b/tests/live_comparison.rs @@ -20,12 +20,12 @@ fn it_successfully_simulates_replay_with_teslas() { } fn test_from_replay(replay_folder: &str, length: usize) { - let (settings, mut state) = json::read_expressive_state_from_file(&format!("{}/Round 000/state.json", replay_folder)).unwrap(); + let (settings, mut state) = json::read_bitwise_state_from_file(&format!("{}/Round 000/state.json", replay_folder)).unwrap(); for i in 0..length { let player = read_player_command(&format!("{}/Round {:03}/PlayerCommand.txt", replay_folder, i)); let opponent = read_opponent_command(&format!("{}/Round {:03}/OpponentCommand.txt", replay_folder, i), &settings); - let (_, mut expected_state) = json::read_expressive_state_from_file(&format!("{}/Round {:03}/state.json", replay_folder, i+1)).unwrap(); + let (_, mut expected_state) = json::read_bitwise_state_from_file(&format!("{}/Round {:03}/state.json", replay_folder, i+1)).unwrap(); state.simulate(&settings, player, opponent); state.sort(); |