From feae1ee191d4fcdc482eab6905558eeaa5d6b303 Mon Sep 17 00:00:00 2001 From: Ryan Walters Date: Fri, 5 Sep 2025 19:53:56 -0500 Subject: [PATCH] test: add asset tests, file exists & has min size --- tests/asset.rs | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 tests/asset.rs diff --git a/tests/asset.rs b/tests/asset.rs new file mode 100644 index 0000000..35e7532 --- /dev/null +++ b/tests/asset.rs @@ -0,0 +1,25 @@ +use pacman::asset::Asset; +use speculoos::prelude::*; +use strum::IntoEnumIterator; + +#[test] +fn all_asset_paths_exist() { + for asset in Asset::iter() { + let path = asset.path(); + let full_path = format!("assets/game/{}", path); + + let metadata = std::fs::metadata(&full_path) + .map_err(|e| format!("Error getting metadata for {}: {}", full_path, e)) + .unwrap(); + assert_that(&metadata.is_file()).is_true(); + assert_that(&metadata.len()).is_greater_than(1024); + } +} + +#[test] +fn asset_paths_are_non_empty() { + for asset in Asset::iter() { + let path = asset.path(); + assert!(!path.is_empty(), "Asset path for {:?} should not be empty", asset); + } +}