add moveing of tabs and groups, multi browser support, auto complite into terminal, extract html and adding testing
This commit is contained in:
@@ -0,0 +1,30 @@
|
||||
"""
|
||||
Shared pytest fixtures for browser-cli integration tests.
|
||||
|
||||
Tests that require a live browser connection use the `browser` fixture.
|
||||
They are automatically skipped if the native host socket is not reachable.
|
||||
"""
|
||||
import pytest
|
||||
from browser_cli.client import send_command, BrowserNotConnected
|
||||
|
||||
|
||||
@pytest.fixture(scope="session")
|
||||
def browser():
|
||||
"""Returns a connected send_command callable, or skips the test."""
|
||||
try:
|
||||
send_command("tabs.list")
|
||||
except BrowserNotConnected:
|
||||
pytest.skip("Browser not connected — start Brave/Chrome with the extension loaded")
|
||||
return send_command
|
||||
|
||||
|
||||
@pytest.fixture(scope="session")
|
||||
def http_tab(browser):
|
||||
"""Ensures at least one http/https tab is open; returns its tab info."""
|
||||
tabs = browser("tabs.list")
|
||||
http_tab = next(
|
||||
(t for t in tabs if t.get("url", "").startswith("http")), None
|
||||
)
|
||||
if http_tab is None:
|
||||
pytest.skip("No http/https tab open — open a web page first")
|
||||
return http_tab
|
||||
Reference in New Issue
Block a user