diff --git a/immediate_stats/src/bevy.rs b/immediate_stats/src/bevy.rs index 21ab91e..98328f9 100644 --- a/immediate_stats/src/bevy.rs +++ b/immediate_stats/src/bevy.rs @@ -32,7 +32,7 @@ mod tests { use bevy_ecs::prelude::World; use immediate_stats_macros::StatContainer; - #[derive(Component, StatContainer, PartialEq, Debug, Clone)] + #[derive(Component, Resource, StatContainer, PartialEq, Debug, Clone)] struct Health(Stat); #[test] @@ -73,4 +73,23 @@ mod tests { assert_eq!(world.get::(entity), Some(health).as_ref()); } + + #[test] + fn reset_resource() { + let mut world = World::new(); + let system = world.register_system(reset_resource_modifiers::); + + world.insert_resource(Health(Stat { + base: 100, + bonus: 50, + multiplier: 2.0, + })); + + world.run_system(system).unwrap(); + + assert_eq!( + world.get_resource::(), + Some(Health(Stat::new(100))).as_ref() + ); + } } diff --git a/immediate_stats/src/bevy/butler.rs b/immediate_stats/src/bevy/butler.rs index 46afe72..a60537b 100644 --- a/immediate_stats/src/bevy/butler.rs +++ b/immediate_stats/src/bevy/butler.rs @@ -53,6 +53,9 @@ mod tests { app.update(); - assert_eq!(*app.world().resource::(), Health(Stat::new(100))); + assert_eq!( + app.world().get_resource::(), + Some(Health(Stat::new(100))).as_ref() + ); } }