test: accept explicit zero-failure summaries

This commit is contained in:
udo 2026-06-22 00:39:12 +00:00
parent 4d17d80f9a
commit 7cf930b4a8

View File

@ -295,13 +295,13 @@ void cli_run_site_suite()
for(String marker : { "compile error", "runtime error", "timed out acquiring compile lock", "near line" })
if(cli_contains(lower, marker))
ok = false;
if(cli_contains(lower, "<div class=\"tests-summary\">") && cli_site_body_reports_failure(lower))
if(cli_contains(lower, "<div class=\"tests-summary\">") && !cli_contains(lower, ">failed 0</span>") && cli_site_body_reports_failure(lower))
ok = false;
if(ok)
break;
}
String name = "uce_site_suite:site tests " + (file == "index.uce" ? "index" : file == "io.uce" ? "filesystem" : file == "websockets.ws.uce" ? "websockets page" : replace(replace(replace(file, ".uce", ""), ".ws", ""), "_", " "));
String fail_detail = "; status=" + std::to_string(res.status) + "; expected_marker=" + (cli_contains(res.body, expected) ? "yes" : "no") + "; summary=" + (cli_contains(lower, "<div class=\"tests-summary\">") ? "yes" : "no") + "; reports_failure=" + (cli_site_body_reports_failure(lower) ? "yes" : "no") + "; body=" + cli_truncate(res.body);
String fail_detail = "; status=" + std::to_string(res.status) + "; expected_marker=" + (cli_contains(res.body, expected) ? "yes" : "no") + "; summary=" + (cli_contains(lower, "<div class=\"tests-summary\">") ? "yes" : "no") + "; failed_zero=" + (cli_contains(lower, ">failed 0</span>") ? "yes" : "no") + "; reports_failure=" + (cli_site_body_reports_failure(lower) ? "yes" : "no") + "; body=" + cli_truncate(res.body);
cli_test_case(name, ok, (ok ? "HTTP 200 with suite page marker and no failed cases for /tests/" : "site suite failed for /tests/") + file + (ok ? "" : fail_detail));
}
}