Look for iw4l.exe as the default approved-test binary on Windows

The runner's default --bin is target/play/iw4l, and its pre-flight check
calls is_file() on that path. On Windows the build writes iw4l.exe, so
`make approved` stopped with "target/play/iw4l is not built" right after
building it. stage_binary already falls back to .exe, but the check runs
first. Append EXE_SUFFIX to the default; it is empty on unix.

The pre-flight now names target/play/iw4l.exe. A full run with
`ARGS='--bin target/play/iw4l.exe'`, the path the default now gives,
passed 47/47 assertions on Windows.
This commit is contained in:
brennop
2026-10-01 15:10:02 -03:00
parent bfe3c2aa70
commit 7b96f516e0
+1 -1
View File
@@ -76,7 +76,7 @@ fn parse_args(root: &Path) -> Result<Args, String> {
seed: None,
replay: None,
cache: CacheMode::Cold,
bin: root.join("target/play/iw4l"),
bin: root.join(format!("target/play/iw4l{}", std::env::consts::EXE_SUFFIX)),
};
while let Some(flag) = it.next() {
let mut value = || it.next().ok_or(format!("{flag} needs a value"));