From 84ecf5324444670a3aaa10ec4c11da1799d8c871 Mon Sep 17 00:00:00 2001 From: Nicola Papale Date: Fri, 1 Jul 2022 12:46:18 +0200 Subject: [PATCH] Add read_all access conflict test --- crates/bevy_ecs/src/query/access.rs | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/crates/bevy_ecs/src/query/access.rs b/crates/bevy_ecs/src/query/access.rs index e74d22e483e5c..a28e6df23ef83 100644 --- a/crates/bevy_ecs/src/query/access.rs +++ b/crates/bevy_ecs/src/query/access.rs @@ -438,6 +438,29 @@ impl Default for FilteredAccessSet { mod tests { use crate::query::{Access, FilteredAccess, FilteredAccessSet}; + #[test] + fn read_all_access_conflicts() { + // read_all / single write + let mut access_a = Access::::default(); + access_a.grow(10); + access_a.add_write(0); + + let mut access_b = Access::::default(); + access_b.read_all(); + + assert!(!access_b.is_compatible(&access_a)); + + // read_all / read_all + let mut access_a = Access::::default(); + access_a.grow(10); + access_a.read_all(); + + let mut access_b = Access::::default(); + access_b.read_all(); + + assert!(access_b.is_compatible(&access_a)); + } + #[test] fn access_get_conflicts() { let mut access_a = Access::::default();