diff options
author | Daniel Schadt <kingdread@gmx.de> | 2020-07-24 14:23:53 +0200 |
---|---|---|
committer | Daniel Schadt <kingdread@gmx.de> | 2020-07-24 14:23:53 +0200 |
commit | 71528905ed228750559a41144a2e0a95db3e6805 (patch) | |
tree | 4e46c6cbd3a3e83ab707e7156b345fbe7f3048ea /tests | |
parent | 01354b0934409c355831bb4202f998fe5dbdc335 (diff) | |
parent | 9d27ec7034f9ad07d8a1d74ab30fdc470de4e02d (diff) | |
download | evtclib-71528905ed228750559a41144a2e0a95db3e6805.tar.gz evtclib-71528905ed228750559a41144a2e0a95db3e6805.tar.bz2 evtclib-71528905ed228750559a41144a2e0a95db3e6805.zip |
Merge branch 'analyzers'
This brings in proper fight outcome detection, which is nice and needed
for downstream applications (raidgrep/ezau).
Furthermore, this cleans up the CM detection a bit by moving away from
the "descriptive" trigger way to just having dynamically dispatched
methods for every log.
Diffstat (limited to 'tests')
-rw-r--r-- | tests/analyzers.rs | 31 | ||||
-rw-r--r-- | tests/logs/analyzers/xera-failed-20200714.zevtc | bin | 0 -> 749741 bytes | |||
-rw-r--r-- | tests/logs/analyzers/xera-success-20200714.zevtc | bin | 0 -> 1724050 bytes | |||
-rw-r--r-- | tests/parsing.rs | 5 |
4 files changed, 36 insertions, 0 deletions
diff --git a/tests/analyzers.rs b/tests/analyzers.rs new file mode 100644 index 0000000..c7ed6bd --- /dev/null +++ b/tests/analyzers.rs @@ -0,0 +1,31 @@ +//! Test for (some) analyzer functions. +//! +//! Even if those tests do not test the actual functionality, they ensure that the API is usable. + +use evtclib::{Compression, Outcome}; + +#[test] +fn test_xera_failed() { + let log = evtclib::process_file( + "tests/logs/analyzers/xera-failed-20200714.zevtc", + Compression::Zip, + ) + .unwrap(); + + let analyzer = log.analyzer().expect("No analyzer for Xera!"); + + assert_eq!(analyzer.outcome(), Some(Outcome::Failure)); +} + +#[test] +fn test_xera_succeeded() { + let log = evtclib::process_file( + "tests/logs/analyzers/xera-success-20200714.zevtc", + Compression::Zip, + ) + .unwrap(); + + let analyzer = log.analyzer().expect("No analyzer for Xera!"); + + assert_eq!(analyzer.outcome(), Some(Outcome::Success)); +} diff --git a/tests/logs/analyzers/xera-failed-20200714.zevtc b/tests/logs/analyzers/xera-failed-20200714.zevtc Binary files differnew file mode 100644 index 0000000..c4e72bf --- /dev/null +++ b/tests/logs/analyzers/xera-failed-20200714.zevtc diff --git a/tests/logs/analyzers/xera-success-20200714.zevtc b/tests/logs/analyzers/xera-success-20200714.zevtc Binary files differnew file mode 100644 index 0000000..0289f4c --- /dev/null +++ b/tests/logs/analyzers/xera-success-20200714.zevtc diff --git a/tests/parsing.rs b/tests/parsing.rs index 58e890a..324d823 100644 --- a/tests/parsing.rs +++ b/tests/parsing.rs @@ -28,6 +28,11 @@ macro_rules! test { assert_eq!(player.profession(), *profession); assert_eq!(player.elite(), *elite_spec); } + + // We don't want to assert the correct outcome here (yet?), but at least ensure we have + // analyzer's ready that produce some outcome. + assert!(log.analyzer().is_some()); + assert!(log.analyzer().unwrap().outcome().is_some()); } }; } |