diff --git a/Cargo.lock b/Cargo.lock index 91c7183..8cc4bdd 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -17,8 +17,7 @@ checksum = "40ce3582fb888755eb1a77668e69f90c3b317fdcc85bbeacd0d9bdfa89427173" [[package]] name = "boxcars" version = "0.11.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fc110464d93fffff294676ebde6b8e8d72e29c0ce681a70e45f438e7717b5b5f" +source = "git+https://github.com/1l1venbb/boxcars?rev=a5632f133c8c1a37b388bb0161044c16d66d3d4b#a5632f133c8c1a37b388bb0161044c16d66d3d4b" dependencies = [ "bitter", "encoding_rs", @@ -321,7 +320,7 @@ checksum = "b2aa850e253778c88a04c3d7323b043aeda9d3e30d5971937c1855769763678e" [[package]] name = "sprocket-rl-parser" -version = "1.3.0" +version = "1.3.1" dependencies = [ "boxcars", "pyo3", diff --git a/Cargo.toml b/Cargo.toml index 2e55250..8fddd04 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "sprocket-rl-parser" -version = "1.3.0" +version = "1.3.1" edition = "2021" description = "Python bindings for the Rocket League replay parser boxcars." authors = ["Jake Bailey "] @@ -13,6 +13,6 @@ name = "_lib" crate-type = ["cdylib"] [dependencies] -boxcars = "=0.11.5" +boxcars = { git = "https://github.com/1l1venbb/boxcars", rev = "a5632f133c8c1a37b388bb0161044c16d66d3d4b" } serde_json = "1.0.133" pyo3 = { version = "0.22.0", features = ["generate-import-lib"] } diff --git a/pyproject.toml b/pyproject.toml index 6eaacc4..426ddaa 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "maturin" [project] name = "sprocket-rl-parser" -version = "1.3.0" +version = "1.3.1" description = "Rocket League replay parsing and analysis." readme = "README.md" requires-python = ">=3.7" diff --git a/test-files/2C4334E411F1B759F5C4E0BCBCD7229C.replay b/test-files/2C4334E411F1B759F5C4E0BCBCD7229C.replay new file mode 100644 index 0000000..8b767ec Binary files /dev/null and b/test-files/2C4334E411F1B759F5C4E0BCBCD7229C.replay differ diff --git a/tests/replay_network_regression.rs b/tests/replay_network_regression.rs index b823ac4..b60af9f 100644 --- a/tests/replay_network_regression.rs +++ b/tests/replay_network_regression.rs @@ -17,3 +17,21 @@ fn parses_network_frames_with_anonymized_player_names() { assert_eq!(network_frames.frames.len(), 10_659); } + +const SEASON_24_REPLAY: &[u8] = + include_bytes!("../test-files/2C4334E411F1B759F5C4E0BCBCD7229C.replay"); + +#[test] +fn parses_network_frames_for_season_24_replay() { + let replay = ParserBuilder::new(SEASON_24_REPLAY) + .with_network_parse(NetworkParse::IgnoreOnError) + .on_error_check_crc() + .parse() + .expect("replay should parse"); + + let network_frames = replay + .network_frames + .expect("network parsing errors must not be silently downgraded to missing frames"); + + assert_eq!(network_frames.frames.len(), 7_200); +}