diff --git a/crates/benilla-app/src/ui_script/reference_ui.rs b/crates/benilla-app/src/ui_script/reference_ui.rs index a9f8be3d..1f6317a4 100644 --- a/crates/benilla-app/src/ui_script/reference_ui.rs +++ b/crates/benilla-app/src/ui_script/reference_ui.rs @@ -1973,8 +1973,12 @@ mod tests { // with the whitespace before each `.` removed. let text = glue_chains(&text); // The engine's deferred lane, `pending_events.push((name, args))`, fires too. - const CALLS: [&str; 3] = [ + const CALLS: [&str; 4] = [ concat!("fire_event", "("), + // The reach-reporting sibling fires exactly as `fire_event` does; left out + // of this list it silently stops counting as a producer, which is how + // `MINIMAP_ZONE_CHANGED` came to read as unfired after `49b4f7b5`. + concat!("fire_event_reach", "("), concat!("fire_event_into", "("), concat!("pending_events.push", "(("), ]; @@ -2121,18 +2125,22 @@ mod tests { continue; } let text = std::fs::read_to_string(&p).unwrap_or_default(); - // Split so this file cannot match its own walker. - const CALL: &str = concat!("fire_event", "("); - let mut from = 0; - while let Some(i) = text[from..].find(CALL) { - let at = from + i + CALL.len(); - from = at; - let rest = text[at..].trim_start(); - if let Some(body) = rest.strip_prefix('"') { - if let Some(end) = body.find('"') { - fired - .entry(body[..end].to_string()) - .or_insert_with(|| p.display().to_string()); + // Split so this file cannot match its own walker. Both spellings of the fire, + // for the reason the producer gate above gives. + const CALLS: [&str; 2] = + [concat!("fire_event", "("), concat!("fire_event_reach", "(")]; + for call in CALLS { + let mut from = 0; + while let Some(i) = text[from..].find(call) { + let at = from + i + call.len(); + from = at; + let rest = text[at..].trim_start(); + if let Some(body) = rest.strip_prefix('"') { + if let Some(end) = body.find('"') { + fired + .entry(body[..end].to_string()) + .or_insert_with(|| p.display().to_string()); + } } } }