diff --git a/src/lib.rs b/src/lib.rs index 77dcf80..17d9e8d 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -7016,6 +7016,20 @@ multiline-compatible = """4.5.6""" assert!(args.iter().any(|arg| arg == "--use-mock-keychain")); } + #[test] + fn chromium_keychain_defaults_honor_user_override_filtering() { + let ignored = vec![ + "--password-store".to_string(), + "--use-mock-keychain".to_string(), + ]; + + assert!(launch_default_arg_ignored( + "--password-store=basic", + &ignored + )); + assert!(launch_default_arg_ignored("--use-mock-keychain", &ignored)); + } + #[test] fn chromium_launch_failure_message_includes_stderr_tail() { let stderr = NamedTempFile::new().unwrap(); diff --git a/tests/test_mind2web_benchmark.py b/tests/test_mind2web_benchmark.py index 3bf3786..148247f 100644 --- a/tests/test_mind2web_benchmark.py +++ b/tests/test_mind2web_benchmark.py @@ -21,6 +21,19 @@ def load_tool(name: str, path: str): run_mind2web_benchmark = load_tool("run_mind2web_benchmark", "tools/run_mind2web_benchmark.py") +def test_raw_cdp_adapter_spawn_uses_mock_keychain(): + source = run_mind2web_benchmark.node_raw_cdp_adapter_code() + spawn_argv = source.split("const browser = spawn(executable, [", 1)[1].split( + "], { stdio: 'ignore' });", 1 + )[0] + + password_store = spawn_argv.index("'--password-store=basic',") + mock_keychain = spawn_argv.index("'--use-mock-keychain',") + about_blank = spawn_argv.index("'about:blank',") + assert password_store < about_blank + assert mock_keychain < about_blank + + def test_manifest_task_can_include_executable_action_fixture(tmp_path): source = tmp_path / "mind2web.json" source.write_text("[]", encoding="utf-8")