From d9338d7529f194f62b4911375ea6960845970d3a Mon Sep 17 00:00:00 2001 From: Claude Date: Sat, 29 Aug 2026 06:57:55 +0000 Subject: [PATCH] test: extract shared _runner_aliased_attrs helper in test_runner.py _build_runner and _build_visualize_override_runner each built the same byte-identical six-key alias dict (browser_manager/browser, claim_verifier/verifier, artifact_manager/artifacts) for instantiate_with_aliased_attrs(VisualQARunner, ...). Hoisted it to a single _runner_aliased_attrs helper both builders now call, matching this file's established convention of factoring out duplicated test scaffolding (_skip_preflight, _claim_event_recorder, etc.). Co-authored-by: Claude --- tests/test_runner.py | 34 ++++++++++++++++++---------------- 1 file changed, 18 insertions(+), 16 deletions(-) diff --git a/tests/test_runner.py b/tests/test_runner.py index 0d64cbe..3ade91f 100644 --- a/tests/test_runner.py +++ b/tests/test_runner.py @@ -232,6 +232,22 @@ async def _skip_preflight(url: str) -> None: return None +def _runner_aliased_attrs(browser: FakeBrowserManager, verifier: Any, artifacts: FakeArtifactManager) -> dict[str, Any]: + """Shared alias-attribute map for ``instantiate_with_aliased_attrs(VisualQARunner, ...)``. + + Covers both the current attribute names and their legacy aliases, matching + whichever constructor signature the module under test still exposes. + """ + return { + "browser_manager": browser, + "browser": browser, + "claim_verifier": verifier, + "verifier": verifier, + "artifact_manager": artifacts, + "artifacts": artifacts, + } + + def _build_runner( module: Any, tmp_path: Path, @@ -254,14 +270,7 @@ def _build_runner( runner = instantiate_with_aliased_attrs( module.VisualQARunner, - { - "browser_manager": browser, - "browser": browser, - "claim_verifier": verifier, - "verifier": verifier, - "artifact_manager": artifacts, - "artifacts": artifacts, - }, + _runner_aliased_attrs(browser, verifier, artifacts), reporters=reporters, ) @@ -283,14 +292,7 @@ def _build_visualize_override_runner( skipped preflight check, for tests exercising per-call visualize overrides.""" runner = instantiate_with_aliased_attrs( module.VisualQARunner, - { - "browser_manager": browser, - "browser": browser, - "claim_verifier": verifier, - "verifier": verifier, - "artifact_manager": artifacts, - "artifacts": artifacts, - }, + _runner_aliased_attrs(browser, verifier, artifacts), browser_config=BrowserConfig(visualize=False), navigator_client=FakeNavigatorClient([]), )