summaryrefslogtreecommitdiff
path: root/2018-tower-defence/src/bin/perf-test.rs
diff options
context:
space:
mode:
authorJustin Wernick <justin@worthe-it.co.za>2022-04-19 21:29:11 +0200
committerJustin Wernick <justin@worthe-it.co.za>2022-04-19 21:29:11 +0200
commit01a849c6b26afd076989f645c6153d8ce1422281 (patch)
treea02fbbfbd958b8492dd3dc7bd58b4bb1d8566080 /2018-tower-defence/src/bin/perf-test.rs
parent59f8b6a8ef1abfd0556cc940ccb64305fcdf2968 (diff)
parent7ec48d0d454499177b63bc5bd512a3a2d6baa839 (diff)
Merge branch 'tower-defence-main'
Diffstat (limited to '2018-tower-defence/src/bin/perf-test.rs')
-rw-r--r--2018-tower-defence/src/bin/perf-test.rs26
1 files changed, 26 insertions, 0 deletions
diff --git a/2018-tower-defence/src/bin/perf-test.rs b/2018-tower-defence/src/bin/perf-test.rs
new file mode 100644
index 0000000..ee0c2be
--- /dev/null
+++ b/2018-tower-defence/src/bin/perf-test.rs
@@ -0,0 +1,26 @@
+extern crate zombot;
+extern crate time;
+use time::{PreciseTime, Duration};
+
+use zombot::*;
+use zombot::engine::constants::*;
+
+const STATE_PATH: &str = "tests/state0.json";
+
+use std::process;
+
+fn main() {
+ println!("Running bitwise engine");
+ let start_time = PreciseTime::now();
+ let state = match input::json::read_bitwise_state_from_file(STATE_PATH) {
+ Ok(ok) => ok,
+ Err(error) => {
+ println!("Error while parsing JSON file: {}", error);
+ process::exit(1);
+ }
+ };
+ let max_time = Duration::milliseconds(MAX_TIME_MILLIS);
+
+ #[cfg(feature = "full-monte-carlo-tree")] strategy::monte_carlo_tree::choose_move(&state, start_time, max_time);
+ #[cfg(not(feature = "full-monte-carlo-tree"))] strategy::monte_carlo::choose_move(&state, start_time, max_time);
+}