diff --git a/world/src/civ/mod.rs b/world/src/civ/mod.rs index 282ca7c31e..5ff79f2b3e 100644 --- a/world/src/civ/mod.rs +++ b/world/src/civ/mod.rs @@ -1914,6 +1914,16 @@ mod tests { assert!(!reqs.satisfied_by(Vec2 { x: -8, y: 8 })); } + #[test] + fn complex_proximity_requirements() { + let a_site = Vec2 { x: 572, y: 724 }; + let reqs = ProximityRequirements::new() + .close_to_one_of(vec![a_site].into_iter(), 60) + .avoid_all_of(vec![a_site].into_iter(), 40); + assert!(reqs.satisfied_by(Vec2 { x: 572, y: 774 })); + assert!(!reqs.satisfied_by(a_site)); + } + #[test] fn location_hint() { let reqs = ProximityRequirements::new().close_to_one_of(