Release v1.0.56: Credential & Browser Profile Manager
All checks were successful
技能自动化发布 / release (push) Successful in 7s
All checks were successful
技能自动化发布 / release (push) Successful in 7s
This commit is contained in:
44
tests/test_browser_open.py
Normal file
44
tests/test_browser_open.py
Normal file
@@ -0,0 +1,44 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
"""
|
||||
Browser launch helper checks (no real browser started).
|
||||
"""
|
||||
import pytest
|
||||
|
||||
|
||||
class TestPlaywrightLaunchHelpers:
|
||||
"""Persistent context launch parts must match RPA contract."""
|
||||
|
||||
def test_persistent_context_includes_maximized(self):
|
||||
from util.playwright_stealth import persistent_context_launch_parts
|
||||
|
||||
args, _ignore = persistent_context_launch_parts()
|
||||
assert "--start-maximized" in args
|
||||
|
||||
def test_open_child_runner_launch_keywords_documented(self):
|
||||
"""launch_persistent_context kwargs contract (static read of source)."""
|
||||
import os
|
||||
|
||||
path = os.path.join(
|
||||
os.path.dirname(__file__),
|
||||
"..",
|
||||
"scripts",
|
||||
"service",
|
||||
"open_child_runner.py",
|
||||
)
|
||||
path = os.path.abspath(path)
|
||||
with open(path, encoding="utf-8") as f:
|
||||
src = f.read()
|
||||
assert "launch_persistent_context" in src
|
||||
assert "headless=False" in src
|
||||
assert "no_viewport=True" in src
|
||||
assert '"channel"' in src or "'channel'" in src
|
||||
|
||||
|
||||
class TestResolveChromiumChannel:
|
||||
"""resolve_chromium_channel returns a channel string when browsers exist."""
|
||||
|
||||
def test_returns_string_or_none(self):
|
||||
from service.browser_service import resolve_chromium_channel
|
||||
|
||||
ch = resolve_chromium_channel()
|
||||
assert ch is None or ch in ("chrome", "msedge")
|
||||
Reference in New Issue
Block a user