Files
browser-cli/tests/test_windows.py
T
daniel156161 a9071abc9a
Package Extension / package-extension (push) Successful in 24s
Build & Publish Package / publish (push) Successful in 31s
Testing / test (push) Successful in 26s
cleanup tests
2026-05-02 01:48:13 +02:00

60 lines
1.7 KiB
Python

"""Tests for windows.* commands."""
def test_windows_list(browser):
windows = browser("windows.list")
assert isinstance(windows, list)
assert len(windows) >= 1
def test_windows_each_has_required_fields(browser):
windows = browser("windows.list")
for w in windows:
assert "id" in w
assert isinstance(w["id"], int)
assert "tabCount" in w
assert isinstance(w["tabCount"], int)
def test_windows_has_state(browser):
windows = browser("windows.list")
# Every window should report a state (normal, minimized, maximized, fullscreen)
for w in windows:
assert "state" in w
def test_windows_open_and_close(browser):
result = browser("windows.open", {})
assert isinstance(result, dict)
new_id = result["id"]
windows = browser("windows.list")
assert any(w["id"] == new_id for w in windows)
browser("windows.close", {"windowId": new_id})
windows_after = browser("windows.list")
assert new_id not in [w["id"] for w in windows_after]
def test_windows_tab_count_positive(browser):
windows = browser("windows.list")
for w in windows:
assert w["tabCount"] >= 0
def test_windows_rename(browser):
result = browser("windows.open", {})
new_id = result["id"]
try:
rename_result = browser("windows.rename", {"windowId": new_id, "name": "__test_alias__"})
assert isinstance(rename_result, dict)
windows = browser("windows.list")
match = next((w for w in windows if w["id"] == new_id), None)
assert match is not None
assert match.get("alias") == "__test_alias__"
finally:
browser("windows.close", {"windowId": new_id})