From e6fffcf9ec3a4333c034dbbadbd474257c898237 Mon Sep 17 00:00:00 2001 From: Guillaume Gomez Date: Mon, 8 Sep 2025 17:30:48 +0200 Subject: [PATCH] Simplify GUI tests runner --- tests/gui/runner.rs | 42 +++++------------------------------------- 1 file changed, 5 insertions(+), 37 deletions(-) diff --git a/tests/gui/runner.rs b/tests/gui/runner.rs index 0b7473d4..8bae07a6 100644 --- a/tests/gui/runner.rs +++ b/tests/gui/runner.rs @@ -5,9 +5,8 @@ //! information. use serde_json::Value; -use std::collections::HashSet; use std::env::current_dir; -use std::fs::{read_dir, read_to_string, remove_dir_all}; +use std::fs::{read_to_string, remove_dir_all}; use std::process::Command; fn get_available_browser_ui_test_version_inner(global: bool) -> Option { @@ -86,52 +85,21 @@ fn main() { let mut command = Command::new("npx"); command .arg("browser-ui-test") - .args(["--variable", "DOC_PATH", book_dir.as_str()]); + .args(["--variable", "DOC_PATH", book_dir.as_str()]) + .args(["--display-format", "compact"]); - let mut filters = Vec::new(); for arg in std::env::args().skip(1) { if arg == "--disable-headless-test" { command.arg("--no-headless"); } else if arg.starts_with("--") { command.arg(arg); } else { - filters.push(arg); + command.args(["--filter", arg.as_str()]); } } let test_dir = "tests/gui"; - if filters.is_empty() { - command.args(["--test-folder", test_dir]); - } else { - let files = read_dir(test_dir) - .map(|dir| { - dir.filter_map(|entry| entry.ok()) - .map(|entry| entry.path()) - .filter(|path| { - path.extension().is_some_and(|ext| ext == "goml") && path.is_file() - }) - .collect::>() - }) - .unwrap_or(Vec::new()); - let mut matches = HashSet::new(); - for filter in filters { - for file in files.iter().filter(|f| { - f.file_name() - .and_then(|name| name.to_str()) - .is_some_and(|name| name.contains(&filter)) - }) { - matches.insert(file.display().to_string()); - } - } - if matches.is_empty() { - println!("No test found"); - return; - } - command.arg("--test-files"); - for entry in matches { - command.arg(entry); - } - } + command.args(["--test-folder", test_dir]); // Then we run the GUI tests on it. let status = command.status().expect("failed to get command output");