SYMBOL INDEX (3939 symbols across 123 files) FILE: docs/resources/scripts/extra.js function setupTermynal (line 1) | function setupTermynal() { function shuffle (line 109) | function shuffle(array) { function showRandomAnnouncement (line 121) | async function showRandomAnnouncement(groupId, timeInterval) { function main (line 138) | async function main() { FILE: docs/resources/scripts/termynal.js class Termynal (line 14) | class Termynal { method constructor (line 30) | constructor(container = '#termynal', options = {}) { method loadLines (line 52) | loadLines() { method init (line 74) | init() { method start (line 96) | async start() { method generateRestart (line 129) | generateRestart() { method generateFinish (line 142) | generateFinish() { method addRestart (line 157) | addRestart() { method addFinish (line 162) | addFinish() { method type (line 171) | async type(line) { method progress (line 187) | async progress(line) { method _wait (line 212) | _wait(time) { method lineDataToElements (line 223) | lineDataToElements(lineData) { method _attributes (line 238) | _attributes(line) { FILE: examples/cloudflare_bypass.py function example_with_context_manager (line 6) | async def example_with_context_manager(): function example_with_enable_disable (line 26) | async def example_with_enable_disable(): function main (line 57) | async def main(): FILE: public/script.js constant SPONSORS (line 340) | const SPONSORS = [ function renderSponsors (line 371) | function renderSponsors(gridId = 'sponsorsGrid') { FILE: public/scripts/extra.js function setupTermynal (line 1) | function setupTermynal() { function shuffle (line 109) | function shuffle(array) { function showRandomAnnouncement (line 121) | async function showRandomAnnouncement(groupId, timeInterval) { function main (line 138) | async function main() { FILE: public/scripts/termynal.js class Termynal (line 14) | class Termynal { method constructor (line 30) | constructor(container = '#termynal', options = {}) { method loadLines (line 52) | loadLines() { method init (line 74) | init() { method start (line 96) | async start() { method generateRestart (line 129) | generateRestart() { method generateFinish (line 142) | generateFinish() { method addRestart (line 157) | addRestart() { method addFinish (line 162) | addFinish() { method type (line 171) | async type(line) { method progress (line 187) | async progress(line) { method _wait (line 212) | _wait(time) { method lineDataToElements (line 223) | lineDataToElements(lineData) { method _attributes (line 238) | _attributes(line) { FILE: pydoll/browser/chromium/base.py class Browser (line 77) | class Browser(ABC): # noqa: PLR0904 method __init__ (line 85) | def __init__( method __aenter__ (line 117) | async def __aenter__(self) -> 'Browser': method __aexit__ (line 122) | async def __aexit__(self, exc_type, exc_val, exc_tb): method connect (line 137) | async def connect(self, ws_address: str) -> Tab: method start (line 159) | async def start(self, headless: bool = False) -> Tab: method stop (line 203) | async def stop(self): method close (line 225) | async def close(self): method create_browser_context (line 232) | async def create_browser_context( method delete_browser_context (line 270) | async def delete_browser_context(self, browser_context_id: str): method get_browser_contexts (line 285) | async def get_browser_contexts(self) -> list[str]: method new_tab (line 293) | async def new_tab(self, url: str = '', browser_context_id: Optional[st... method get_targets (line 320) | async def get_targets(self) -> list[TargetInfo]: method get_opened_tabs (line 334) | async def get_opened_tabs(self) -> list[Tab]: method get_tab_by_target (line 366) | async def get_tab_by_target(self, target: TargetInfo) -> Tab: method set_download_path (line 371) | async def set_download_path(self, path: str, browser_context_id: Optio... method set_download_behavior (line 382) | async def set_download_behavior( method delete_all_cookies (line 412) | async def delete_all_cookies(self, browser_context_id: Optional[str] =... method set_cookies (line 417) | async def set_cookies( method get_cookies (line 424) | async def get_cookies(self, browser_context_id: Optional[str] = None) ... method get_version (line 439) | async def get_version(self) -> GetVersionResult: method get_window_id_for_target (line 445) | async def get_window_id_for_target(self, target_id: str) -> int: method get_window_id_for_tab (line 453) | async def get_window_id_for_tab(self, tab: Tab) -> int: method get_window_id (line 461) | async def get_window_id(self) -> int: method set_window_maximized (line 472) | async def set_window_maximized(self): method set_window_minimized (line 478) | async def set_window_minimized(self): method set_window_bounds (line 484) | async def set_window_bounds(self, bounds: Bounds): method grant_permissions (line 496) | async def grant_permissions( method reset_permissions (line 519) | async def reset_permissions(self, browser_context_id: Optional[str] = ... method on (line 525) | async def on( method on (line 529) | async def on( method on (line 532) | async def on(self, event_name, callback, temporary: bool = False) -> int: method remove_callback (line 565) | async def remove_callback(self, callback_id: int): method enable_fetch_events (line 570) | async def enable_fetch_events( method disable_fetch_events (line 599) | async def disable_fetch_events(self): method enable_runtime_events (line 604) | async def enable_runtime_events(self): method disable_runtime_events (line 609) | async def disable_runtime_events(self): method continue_request (line 614) | async def continue_request( method fail_request (line 638) | async def fail_request(self, request_id: str, error_reason: ErrorReason): method fulfill_request (line 643) | async def fulfill_request( method _validate_connection_port (line 667) | def _validate_connection_port(connection_port: Optional[int]): method _continue_request_callback (line 673) | async def _continue_request_callback(self, event: RequestPausedEvent): method _continue_request_with_auth_callback (line 679) | async def _continue_request_with_auth_callback( method _tab_continue_request_callback (line 703) | async def _tab_continue_request_callback(event: RequestPausedEvent, ta... method _tab_continue_request_with_auth_callback (line 710) | async def _tab_continue_request_with_auth_callback( method _setup_context_proxy_auth_for_tab (line 731) | async def _setup_context_proxy_auth_for_tab( method _apply_user_agent_override (line 765) | async def _apply_user_agent_override(self, tab: Tab) -> None: method _get_user_agent_from_options (line 795) | def _get_user_agent_from_options(self) -> Optional[str]: method _verify_browser_running (line 802) | async def _verify_browser_running(self): method _configure_proxy (line 814) | async def _configure_proxy( method _is_valid_tab (line 842) | def _is_valid_tab(target: TargetInfo) -> bool: method _get_valid_tab_id (line 847) | async def _get_valid_tab_id(targets: list[TargetInfo]) -> str: method _is_browser_running (line 874) | async def _is_browser_running(self, timeout: int = 10) -> bool: method _execute_command (line 883) | async def _execute_command( method _setup_user_dir (line 890) | def _setup_user_dir(self): method _set_browser_preferences_in_temp_dir (line 903) | def _set_browser_preferences_in_temp_dir(self, temp_dir: TemporaryDire... method _set_browser_preferences_in_user_data_dir (line 912) | def _set_browser_preferences_in_user_data_dir(self, user_data_dir: str): method _get_user_data_dir (line 944) | def _get_user_data_dir(self) -> Optional[str]: method _validate_ws_address (line 951) | def _validate_ws_address(ws_address: str): method _setup_ws_address (line 963) | async def _setup_ws_address(self, ws_address: str): method _get_tab_kwargs (line 971) | def _get_tab_kwargs(self, target_id: str, browser_context_id: Optional... method _get_tab_ws_address (line 995) | def _get_tab_ws_address(self, tab_id: str) -> str: method _sanitize_proxy_and_extract_auth (line 1016) | def _sanitize_proxy_and_extract_auth( method _get_default_binary_location (line 1059) | def _get_default_binary_location(self) -> str: FILE: pydoll/browser/chromium/chrome.py class Chrome (line 18) | class Chrome(Browser): method __init__ (line 21) | def __init__( method _get_default_binary_location (line 37) | def _get_default_binary_location(): FILE: pydoll/browser/chromium/edge.py class Edge (line 18) | class Edge(Browser): method __init__ (line 21) | def __init__( method _get_default_binary_location (line 37) | def _get_default_binary_location(): FILE: pydoll/browser/interfaces.py class Options (line 6) | class Options(ABC): method arguments (line 9) | def arguments(self) -> list[str]: method binary_location (line 14) | def binary_location(self) -> str: method start_timeout (line 19) | def start_timeout(self) -> int: method add_argument (line 23) | def add_argument(self, argument: str): method browser_preferences (line 28) | def browser_preferences(self) -> dict: method headless (line 33) | def headless(self) -> bool: method headless (line 38) | def headless(self, headless: bool): method page_load_state (line 43) | def page_load_state(self) -> PageLoadState: method page_load_state (line 48) | def page_load_state(self, state: PageLoadState): class BrowserOptionsManager (line 52) | class BrowserOptionsManager(ABC): method initialize_options (line 54) | def initialize_options(self) -> Options: method add_default_arguments (line 58) | def add_default_arguments(self): FILE: pydoll/browser/managers/browser_options_manager.py class ChromiumOptionsManager (line 16) | class ChromiumOptionsManager(BrowserOptionsManager): method __init__ (line 24) | def __init__(self, options: Optional[Options] = None): method initialize_options (line 31) | def initialize_options( method add_default_arguments (line 58) | def add_default_arguments(self): FILE: pydoll/browser/managers/browser_process_manager.py class BrowserProcessManager (line 8) | class BrowserProcessManager: method __init__ (line 16) | def __init__( method start_browser_process (line 34) | def start_browser_process( method _default_process_creator (line 68) | def _default_process_creator(command: list[str]) -> subprocess.Popen: method stop_process (line 73) | def stop_process(self): FILE: pydoll/browser/managers/proxy_manager.py class ProxyManager (line 12) | class ProxyManager: method __init__ (line 20) | def __init__(self, options: Options): method get_proxy_credentials (line 31) | def get_proxy_credentials(self) -> tuple[bool, tuple[Optional[str], Op... method _find_proxy_argument (line 62) | def _find_proxy_argument(self) -> Optional[tuple[int, str]]: method _parse_proxy (line 77) | def _parse_proxy(proxy_value: str) -> tuple[bool, Optional[str], Optio... method _update_proxy_argument (line 105) | def _update_proxy_argument(self, index: int, clean_proxy: str) -> None: FILE: pydoll/browser/managers/temp_dir_manager.py class TempDirectoryManager (line 12) | class TempDirectoryManager: method __init__ (line 20) | def __init__(self, temp_dir_factory: Callable[[], TemporaryDirectory] ... method create_temp_dir (line 32) | def create_temp_dir(self) -> TemporaryDirectory: method retry_process_file (line 45) | def retry_process_file(func: Callable[[str], None], path: str, retry_t... method handle_cleanup_error (line 71) | def handle_cleanup_error(self, func: Callable[[str], None], path: str,... method cleanup (line 125) | def cleanup(self): FILE: pydoll/browser/options.py class ChromiumOptions (line 12) | class ChromiumOptions(Options): method __init__ (line 20) | def __init__(self): method arguments (line 36) | def arguments(self) -> list[str]: method arguments (line 46) | def arguments(self, args_list: list[str]): method binary_location (line 56) | def binary_location(self) -> str: method binary_location (line 66) | def binary_location(self, location: str): method start_timeout (line 76) | def start_timeout(self) -> int: method start_timeout (line 86) | def start_timeout(self, timeout: int): method add_argument (line 95) | def add_argument(self, argument: str): method remove_argument (line 110) | def remove_argument(self, argument: str): method browser_preferences (line 125) | def browser_preferences(self) -> dict: method browser_preferences (line 129) | def browser_preferences(self, preferences: dict): method _set_pref_path (line 137) | def _set_pref_path(self, path: list, value): method _get_pref_path (line 152) | def _get_pref_path(self, path: list): method set_default_download_directory (line 170) | def set_default_download_directory(self, path: str): method set_accept_languages (line 181) | def set_accept_languages(self, languages: str): method prompt_for_download (line 193) | def prompt_for_download(self) -> bool: method prompt_for_download (line 197) | def prompt_for_download(self, enabled: bool): method block_popups (line 209) | def block_popups(self) -> bool: method block_popups (line 213) | def block_popups(self, block: bool): method password_manager_enabled (line 227) | def password_manager_enabled(self) -> bool: method password_manager_enabled (line 231) | def password_manager_enabled(self, enabled: bool): method block_notifications (line 244) | def block_notifications(self) -> bool: method block_notifications (line 252) | def block_notifications(self, block: bool): method allow_automatic_downloads (line 268) | def allow_automatic_downloads(self) -> bool: method allow_automatic_downloads (line 279) | def allow_automatic_downloads(self, allow: bool): method open_pdf_externally (line 295) | def open_pdf_externally(self) -> bool: method open_pdf_externally (line 299) | def open_pdf_externally(self, enabled: bool): method headless (line 311) | def headless(self) -> bool: method headless (line 315) | def headless(self, headless: bool): method webrtc_leak_protection (line 324) | def webrtc_leak_protection(self) -> bool: method webrtc_leak_protection (line 328) | def webrtc_leak_protection(self, enabled: bool): method page_load_state (line 338) | def page_load_state(self) -> PageLoadState: method page_load_state (line 342) | def page_load_state(self, state: PageLoadState): FILE: pydoll/browser/requests/har_recorder.py function _get_pydoll_version (line 59) | def _get_pydoll_version() -> str: class HarRecorder (line 67) | class HarRecorder: method __init__ (line 75) | def __init__(self, tab: Tab, resource_types: list[ResourceType] | None... method start (line 86) | async def start(self) -> None: method stop (line 116) | async def stop(self) -> None: method _on_request_will_be_sent (line 138) | def _on_request_will_be_sent(self, event: RequestWillBeSentEvent) -> N... method _on_request_extra_info (line 163) | def _on_request_extra_info(self, event: RequestWillBeSentExtraInfoEven... method _on_response_received (line 176) | def _on_response_received(self, event: ResponseReceivedEvent) -> None: method _on_response_extra_info (line 197) | def _on_response_extra_info(self, event: ResponseReceivedExtraInfoEven... method _on_data_received (line 213) | def _on_data_received(self, event: DataReceivedEvent) -> None: method _on_loading_finished (line 225) | def _on_loading_finished(self, event: LoadingFinishedEvent) -> None: method _on_loading_failed (line 244) | def _on_loading_failed(self, event: LoadingFailedEvent) -> None: method _finalize_entry (line 262) | async def _finalize_entry(self, request_id: str) -> None: method _finalize_redirect_entry (line 275) | def _finalize_redirect_entry(self, request_id: str, redirect_response:... method _flush_pending (line 295) | def _flush_pending(self) -> None: method _fetch_response_body (line 305) | async def _fetch_response_body(self, request_id: str) -> tuple[str, bo... method _build_entry (line 320) | def _build_entry(self, pending: dict[str, Any]) -> HarEntry: method _build_har_request (line 368) | def _build_har_request( method _build_har_response (line 393) | def _build_har_response( method _build_har_timings (line 449) | def _build_har_timings( method _normalize_http_version (line 498) | def _normalize_http_version(protocol: str) -> str: method _headers_dict_to_list (line 515) | def _headers_dict_to_list(headers: dict[str, str]) -> list[HarHeader]: method _parse_query_string (line 520) | def _parse_query_string(url: str) -> list[HarQueryParam]: method _wall_time_to_iso (line 534) | def _wall_time_to_iso(wall_time: float) -> str: method _parse_request_cookies (line 541) | def _parse_request_cookies(headers: dict[str, str]) -> list[HarCookie]: method _parse_response_cookies (line 559) | def _parse_response_cookies(headers: dict[str, str]) -> list[HarCookie]: class HarCapture (line 591) | class HarCapture: method __init__ (line 598) | def __init__(self, recorder: HarRecorder): method entries (line 602) | def entries(self) -> list[HarEntry]: method to_dict (line 606) | def to_dict(self) -> Har: method save (line 627) | def save(self, path: str | Path) -> None: FILE: pydoll/browser/requests/request.py class Request (line 61) | class Request: method __init__ (line 83) | def __init__(self, tab: Tab): method request (line 98) | async def request( method get (line 163) | async def get( method post (line 181) | async def post( method put (line 201) | async def put( method patch (line 221) | async def patch( method delete (line 241) | async def delete(self, url: str, **kwargs) -> Response: method head (line 253) | async def head(self, url: str, **kwargs) -> Response: method options (line 268) | async def options(self, url: str, **kwargs) -> Response: method record (line 283) | async def record( method _build_url_with_params (line 323) | def _build_url_with_params(url: str, params: Optional[dict[str, str]])... method _build_request_options (line 336) | def _build_request_options( method _add_request_body (line 355) | def _add_request_body( method _handle_json_options (line 368) | def _handle_json_options(options: dict[str, Any], json: Optional[dict[... method _handle_data_options (line 375) | def _handle_data_options( method _execute_fetch_request (line 387) | async def _execute_fetch_request(self, url: str, options: dict[str, An... method _build_response (line 402) | def _build_response( method _register_callbacks (line 422) | async def _register_callbacks(self) -> None: method _clear_callbacks (line 464) | async def _clear_callbacks(self) -> None: method _extract_received_headers (line 479) | def _extract_received_headers(self) -> list[HeaderEntry]: method _extract_sent_headers (line 492) | def _extract_sent_headers(self) -> list[HeaderEntry]: method _extract_headers_from_events (line 506) | def _extract_headers_from_events( method _extract_request_sent_headers (line 544) | def _extract_request_sent_headers( method _extract_request_sent_extra_info_headers (line 559) | def _extract_request_sent_extra_info_headers( method _extract_response_received_headers (line 576) | def _extract_response_received_headers( method _extract_response_received_extra_info_headers (line 591) | def _extract_response_received_extra_info_headers( method _convert_dict_to_header_entries (line 610) | def _convert_dict_to_header_entries(headers_dict: dict) -> list[Header... method _extract_set_cookies (line 622) | def _extract_set_cookies(self) -> list[CookieParam]: method _filter_response_extra_info_events (line 655) | def _filter_response_extra_info_events(self) -> list[RequestReceivedEv... method _parse_set_cookie_header (line 670) | def _parse_set_cookie_header(self, set_cookie_header: str) -> list[Coo... method _parse_cookie_line (line 694) | def _parse_cookie_line(line: str) -> Optional[CookieParam]: method _add_unique_cookies (line 719) | def _add_unique_cookies(cookies: list[CookieParam], new_cookies: list[... method _convert_header_entries_to_dict (line 734) | def _convert_header_entries_to_dict(headers: list[HeaderEntry]) -> dic... FILE: pydoll/browser/requests/response.py class Response (line 18) | class Response: method __init__ (line 38) | def __init__( method ok (line 82) | def ok(self) -> bool: method cookies (line 95) | def cookies(self) -> list[CookieParam]: method request_headers (line 110) | def request_headers(self) -> list[HeaderEntry]: method headers (line 125) | def headers(self) -> list[HeaderEntry]: method status_code (line 139) | def status_code(self) -> int: method text (line 148) | def text(self) -> str: method content (line 164) | def content(self) -> bytes: method url (line 174) | def url(self) -> str: method json (line 183) | def json(self) -> Union[dict[str, Any], list]: method raise_for_status (line 210) | def raise_for_status(self) -> None: FILE: pydoll/browser/tab.py class Tab (line 130) | class Tab(FindElementsMixin): method __init__ (line 139) | def __init__( method page_events_enabled (line 186) | def page_events_enabled(self) -> bool: method network_events_enabled (line 191) | def network_events_enabled(self) -> bool: method fetch_events_enabled (line 196) | def fetch_events_enabled(self) -> bool: method dom_events_enabled (line 201) | def dom_events_enabled(self) -> bool: method runtime_events_enabled (line 206) | def runtime_events_enabled(self) -> bool: method request (line 211) | def request(self) -> Request: method scroll (line 223) | def scroll(self) -> ScrollAPI: method keyboard (line 235) | def keyboard(self) -> KeyboardAPI: method mouse (line 247) | def mouse(self) -> MouseAPI: method intercept_file_chooser_dialog_enabled (line 257) | def intercept_file_chooser_dialog_enabled(self) -> bool: method current_url (line 262) | async def current_url(self) -> str: method page_source (line 270) | async def page_source(self) -> str: method title (line 278) | async def title(self) -> str: method enable_page_events (line 285) | async def enable_page_events(self): method enable_network_events (line 293) | async def enable_network_events(self): method enable_fetch_events (line 301) | async def enable_fetch_events( method enable_dom_events (line 333) | async def enable_dom_events(self): method enable_runtime_events (line 341) | async def enable_runtime_events(self): method enable_intercept_file_chooser_dialog (line 349) | async def enable_intercept_file_chooser_dialog(self): method enable_auto_solve_cloudflare_captcha (line 362) | async def enable_auto_solve_cloudflare_captcha( method disable_fetch_events (line 408) | async def disable_fetch_events(self): method disable_page_events (line 416) | async def disable_page_events(self): method disable_network_events (line 424) | async def disable_network_events(self): method disable_dom_events (line 432) | async def disable_dom_events(self): method disable_runtime_events (line 440) | async def disable_runtime_events(self): method disable_intercept_file_chooser_dialog (line 448) | async def disable_intercept_file_chooser_dialog(self): method disable_auto_solve_cloudflare_captcha (line 458) | async def disable_auto_solve_cloudflare_captcha(self): method close (line 464) | async def close(self): method get_frame (line 477) | async def get_frame(self, frame: 'WebElement') -> IFrame: method find_shadow_roots (line 530) | async def find_shadow_roots(self, deep: bool = False, timeout: float =... method _collect_all_shadow_roots (line 575) | async def _collect_all_shadow_roots(self, deep: bool) -> list[ShadowRo... method _resolve_shadow_host (line 622) | async def _resolve_shadow_host(self, host_backend_id: int | None) -> W... method _collect_oopif_shadow_roots (line 636) | async def _collect_oopif_shadow_roots(self) -> list[ShadowRoot]: method _collect_shadow_roots_from_oopif_target (line 658) | async def _collect_shadow_roots_from_oopif_target( method _resolve_oopif_shadow_entry (line 705) | async def _resolve_oopif_shadow_entry( method _resolve_oopif_shadow_host (line 749) | async def _resolve_oopif_shadow_host( method _collect_shadow_roots_from_tree (line 788) | def _collect_shadow_roots_from_tree(node: Node, results: list[tuple[No... method bring_to_front (line 802) | async def bring_to_front(self): method get_cookies (line 807) | async def get_cookies(self) -> list[Cookie]: method get_network_response_body (line 825) | async def get_network_response_body(self, request_id: str) -> str: method get_network_logs (line 847) | async def get_network_logs(self, filter: Optional[str] = None) -> list... method set_cookies (line 871) | async def set_cookies(self, cookies: list[CookieParam]): method delete_all_cookies (line 886) | async def delete_all_cookies(self): method go_to (line 891) | async def go_to(self, url: str, timeout: int = 300): method refresh (line 913) | async def refresh( method take_screenshot (line 941) | async def take_screenshot( method print_to_pdf (line 1019) | async def print_to_pdf( method save_bundle (line 1073) | async def save_bundle(self, path: str | Path, inline_assets: bool = Fa... method _fetch_document_html (line 1127) | async def _fetch_document_html(self, frame_tree: FrameResourceTree) ->... method _fetch_bundle_assets (line 1145) | async def _fetch_bundle_assets( method has_dialog (line 1177) | async def has_dialog(self) -> bool: method get_dialog_message (line 1190) | async def get_dialog_message(self) -> str: method handle_dialog (line 1203) | async def handle_dialog(self, accept: bool, prompt_text: Optional[str]... method execute_script (line 1225) | async def execute_script( method execute_script (line 1247) | async def execute_script( method execute_script (line 1265) | async def execute_script( method continue_request (line 1395) | async def continue_request( method fail_request (line 1419) | async def fail_request(self, request_id: str, error_reason: ErrorReason): method fulfill_request (line 1424) | async def fulfill_request( method continue_with_auth (line 1447) | async def continue_with_auth( method expect_file_chooser (line 1473) | async def expect_file_chooser( method expect_and_bypass_cloudflare_captcha (line 1519) | async def expect_and_bypass_cloudflare_captcha( method expect_download (line 1579) | async def expect_download( method _cleanup_download_context (line 1693) | async def _cleanup_download_context( method on (line 1718) | async def on( method on (line 1722) | async def on( method on (line 1725) | async def on( method remove_callback (line 1764) | async def remove_callback(self, callback_id: int): method clear_callbacks (line 1769) | async def clear_callbacks(self): method _get_connection_handler (line 1774) | def _get_connection_handler(self) -> ConnectionHandler: method _get_evaluate_command (line 1785) | def _get_evaluate_command( method _refresh_if_url_not_changed (line 1824) | async def _refresh_if_url_not_changed(self, url: str) -> bool: method _validate_argument_error (line 1833) | def _validate_argument_error(response: EvaluateResponse) -> None: method _wait_page_load (line 1865) | async def _wait_page_load(self, timeout: int = 300): method _find_cloudflare_shadow_root (line 1914) | async def _find_cloudflare_shadow_root(self, timeout: float) -> Shadow... method _bypass_cloudflare (line 1945) | async def _bypass_cloudflare( class _DownloadHandle (line 1969) | class _DownloadHandle: method __init__ (line 1972) | def __init__( method file_path (line 1985) | def file_path(self) -> Optional[str]: method wait_started (line 1988) | async def wait_started(self, timeout: Optional[float] = None) -> None: method wait_finished (line 1991) | async def wait_finished(self, timeout: Optional[float] = None) -> None: method read_bytes (line 1994) | async def read_bytes(self) -> bytes: method read_base64 (line 2001) | async def read_base64(self) -> str: FILE: pydoll/commands/browser_commands.py class BrowserCommands (line 64) | class BrowserCommands: method get_version (line 79) | def get_version() -> GetVersionCommand: method get_browser_command_line (line 90) | def get_browser_command_line() -> GetBrowserCommandLineCommand: method get_histograms (line 102) | def get_histograms( method get_histogram (line 126) | def get_histogram( method get_window_bounds (line 146) | def get_window_bounds(window_id: WindowID) -> GetWindowBoundsCommand: method get_window_for_target (line 160) | def get_window_for_target( method set_window_bounds (line 180) | def set_window_bounds(window_id: WindowID, bounds: Bounds) -> SetWindo... method set_contents_size (line 197) | def set_contents_size( method set_dock_tile (line 223) | def set_dock_tile( method execute_browser_command (line 245) | def execute_browser_command(command_id: BrowserCommandId) -> ExecuteBr... method add_privacy_sandbox_enrollment_override (line 259) | def add_privacy_sandbox_enrollment_override( method add_privacy_sandbox_coordinator_key_config (line 277) | def add_privacy_sandbox_coordinator_key_config( method set_permission (line 311) | def set_permission( method grant_permissions (line 337) | def grant_permissions( method reset_permissions (line 362) | def reset_permissions( method set_download_behavior (line 381) | def set_download_behavior( method cancel_download (line 413) | def cancel_download( method close (line 434) | def close() -> CloseCommand: method crash (line 444) | def crash() -> CrashCommand: method crash_gpu_process (line 454) | def crash_gpu_process() -> CrashGpuProcessCommand: method set_window_maximized (line 465) | def set_window_maximized(window_id: WindowID) -> SetWindowBoundsCommand: method set_window_minimized (line 479) | def set_window_minimized(window_id: WindowID) -> SetWindowBoundsCommand: method set_window_fullscreen (line 493) | def set_window_fullscreen(window_id: WindowID) -> SetWindowBoundsCommand: method set_window_normal (line 507) | def set_window_normal(window_id: WindowID) -> SetWindowBoundsCommand: FILE: pydoll/commands/dom_commands.py class DomCommands (line 116) | class DomCommands: method describe_node (line 131) | def describe_node( method disable (line 171) | def disable() -> DisableCommand: method enable (line 186) | def enable(include_whitespace: Optional['IncludeWhitespace'] = None) -... method focus (line 208) | def focus( method get_attributes (line 238) | def get_attributes(node_id: int) -> GetAttributesCommand: method get_box_model (line 258) | def get_box_model( method get_document (line 290) | def get_document( method get_node_for_location (line 318) | def get_node_for_location( method get_outer_html (line 351) | def get_outer_html( method hide_highlight (line 382) | def hide_highlight() -> HideHighlightCommand: method highlight_node (line 396) | def highlight_node() -> HighlightNodeCommand: method highlight_rect (line 409) | def highlight_rect() -> HighlightRectCommand: method move_to (line 423) | def move_to( method query_selector (line 450) | def query_selector( method query_selector_all (line 473) | def query_selector_all( method remove_attribute (line 496) | def remove_attribute( method remove_node (line 518) | def remove_node(node_id: int) -> RemoveNodeCommand: method request_child_nodes (line 536) | def request_child_nodes( method request_node (line 565) | def request_node( method resolve_node (line 585) | def resolve_node( method scroll_into_view_if_needed (line 619) | def scroll_into_view_if_needed( method set_attributes_as_text (line 654) | def set_attributes_as_text( method set_attribute_value (line 681) | def set_attribute_value( method set_file_input_files (line 705) | def set_file_input_files( method set_node_name (line 737) | def set_node_name( method set_node_value (line 759) | def set_node_value( method set_outer_html (line 781) | def set_outer_html( method collect_class_names_from_subtree (line 804) | def collect_class_names_from_subtree( method copy_to (line 824) | def copy_to( method discard_search_results (line 851) | def discard_search_results( method get_anchor_element (line 870) | def get_anchor_element( method get_container_for_node (line 894) | def get_container_for_node( method get_content_quads (line 930) | def get_content_quads( method get_detached_dom_nodes (line 960) | def get_detached_dom_nodes() -> GetDetachedDomNodesCommand: method get_element_by_relation (line 974) | def get_element_by_relation( method get_file_info (line 996) | def get_file_info( method get_frame_owner (line 1016) | def get_frame_owner( method get_nodes_for_subtree_by_style (line 1036) | def get_nodes_for_subtree_by_style( method get_node_stack_traces (line 1062) | def get_node_stack_traces( method get_querying_descendants_for_container (line 1082) | def get_querying_descendants_for_container( method get_relayout_boundary (line 1102) | def get_relayout_boundary( method get_search_results (line 1122) | def get_search_results( method get_top_layer_elements (line 1146) | def get_top_layer_elements() -> GetTopLayerElementsCommand: method mark_undoable_state (line 1160) | def mark_undoable_state() -> MarkUndoableStateCommand: method perform_search (line 1174) | def perform_search( method push_node_by_path_to_frontend (line 1198) | def push_node_by_path_to_frontend( method push_nodes_by_backend_ids_to_frontend (line 1218) | def push_nodes_by_backend_ids_to_frontend( method redo (line 1237) | def redo() -> RedoCommand: method set_inspected_node (line 1251) | def set_inspected_node( method set_node_stack_traces_enabled (line 1271) | def set_node_stack_traces_enabled( method undo (line 1291) | def undo() -> UndoCommand: FILE: pydoll/commands/emulation_commands.py class EmulationCommands (line 16) | class EmulationCommands: method set_user_agent_override (line 28) | def set_user_agent_override( FILE: pydoll/commands/fetch_commands.py class FetchCommands (line 41) | class FetchCommands: method continue_request (line 59) | def continue_request( method continue_request_with_auth (line 103) | def continue_request_with_auth( method disable (line 142) | def disable() -> DisableCommand: method enable (line 154) | def enable( method fail_request (line 189) | def fail_request(request_id: str, error_reason: ErrorReason) -> FailRe... method fulfill_request (line 207) | def fulfill_request( method get_response_body (line 245) | def get_response_body(request_id: str) -> GetResponseBodyCommand: method continue_response (line 263) | def continue_response( method take_response_body_as_stream (line 300) | def take_response_body_as_stream( FILE: pydoll/commands/input_commands.py class InputCommands (line 53) | class InputCommands: method cancel_dragging (line 69) | def cancel_dragging() -> CancelDraggingCommand: method dispatch_key_event (line 82) | def dispatch_key_event( # noqa: PLR0912 method dispatch_mouse_event (line 171) | def dispatch_mouse_event( method dispatch_touch_event (line 259) | def dispatch_touch_event( method set_ignore_input_events (line 298) | def set_ignore_input_events(ignore: bool) -> SetIgnoreInputEventsCommand: method dispatch_drag_event (line 316) | def dispatch_drag_event( method emulate_touch_from_mouse_event (line 351) | def emulate_touch_from_mouse_event( # noqa: PLR0913, PLR0917 method ime_set_composition (line 403) | def ime_set_composition( method insert_text (line 444) | def insert_text( method set_intercept_drags (line 464) | def set_intercept_drags(enabled: bool) -> SetInterceptDragsCommand: method synthesize_pinch_gesture (line 486) | def synthesize_pinch_gesture( method synthesize_scroll_gesture (line 524) | def synthesize_scroll_gesture( method synthesize_tap_gesture (line 595) | def synthesize_tap_gesture( FILE: pydoll/commands/network_commands.py class NetworkCommands (line 80) | class NetworkCommands: method clear_browser_cache (line 98) | def clear_browser_cache() -> ClearBrowserCacheCommand: method clear_browser_cookies (line 119) | def clear_browser_cookies() -> ClearBrowserCookiesCommand: method delete_cookies (line 133) | def delete_cookies( method disable (line 170) | def disable() -> DisableCommand: method enable (line 190) | def enable( method get_cookies (line 221) | def get_cookies( method get_request_post_data (line 247) | def get_request_post_data( method get_response_body (line 274) | def get_response_body( method set_cache_disabled (line 300) | def set_cache_disabled(cache_disabled: bool) -> SetCacheDisabledCommand: method set_cookie (line 322) | def set_cookie( method set_cookies (line 402) | def set_cookies(cookies: list[SetCookieParams]) -> SetCookiesCommand: method set_extra_http_headers (line 427) | def set_extra_http_headers( method set_useragent_override (line 454) | def set_useragent_override( method clear_accepted_encodings_override (line 493) | def clear_accepted_encodings_override() -> ClearAcceptedEncodingsOverr... method enable_reporting_api (line 513) | def enable_reporting_api( method search_in_response_body (line 537) | def search_in_response_body( method set_blocked_urls (line 573) | def set_blocked_urls(urls: list[str]) -> SetBlockedURLsCommand: method set_bypass_service_worker (line 600) | def set_bypass_service_worker( method get_certificate (line 627) | def get_certificate(origin: str) -> GetCertificateCommand: method get_response_body_for_interception (line 653) | def get_response_body_for_interception( method set_accepted_encodings (line 680) | def set_accepted_encodings( method set_attach_debug_stack (line 707) | def set_attach_debug_stack(enabled: bool) -> SetAttachDebugStackCommand: method set_cookie_controls (line 732) | def set_cookie_controls( method stream_resource_content (line 769) | def stream_resource_content( method take_response_body_for_interception_as_stream (line 796) | def take_response_body_for_interception_as_stream( method emulate_network_conditions (line 826) | def emulate_network_conditions( method get_security_isolation_status (line 880) | def get_security_isolation_status( method load_network_resource (line 910) | def load_network_resource( method replay_xhr (line 944) | def replay_xhr( FILE: pydoll/commands/page_commands.py class PageCommands (line 113) | class PageCommands: method add_script_to_evaluate_on_new_document (line 131) | def add_script_to_evaluate_on_new_document( method bring_to_front (line 162) | def bring_to_front() -> BringToFrontCommand: method capture_screenshot (line 169) | def capture_screenshot( method close (line 208) | def close() -> CloseCommand: method create_isolated_world (line 218) | def create_isolated_world( method disable (line 243) | def disable() -> DisableCommand: method enable (line 253) | def enable( method get_app_manifest (line 273) | def get_app_manifest( method get_frame_tree (line 288) | def get_frame_tree() -> GetFrameTreeCommand: method get_layout_metrics (line 298) | def get_layout_metrics() -> GetLayoutMetricsCommand: method get_navigation_history (line 308) | def get_navigation_history() -> GetNavigationHistoryCommand: method handle_javascript_dialog (line 318) | def handle_javascript_dialog( method navigate (line 338) | def navigate( method navigate_to_history_entry (line 371) | def navigate_to_history_entry(entry_id: int) -> NavigateToHistoryEntry... method print_to_pdf (line 385) | def print_to_pdf( # noqa: PLR0912 method reload (line 466) | def reload( method reset_navigation_history (line 492) | def reset_navigation_history() -> ResetNavigationHistoryCommand: method remove_script_to_evaluate_on_new_document (line 499) | def remove_script_to_evaluate_on_new_document( method set_bypass_csp (line 515) | def set_bypass_csp(enabled: bool) -> SetBypassCSPCommand: method set_document_content (line 529) | def set_document_content(frame_id: str, html: str) -> SetDocumentConte... method set_intercept_file_chooser_dialog (line 544) | def set_intercept_file_chooser_dialog(enabled: bool) -> SetInterceptFi... method set_lifecycle_events_enabled (line 559) | def set_lifecycle_events_enabled(enabled: bool) -> SetLifecycleEventsE... method stop_loading (line 573) | def stop_loading() -> StopLoadingCommand: method add_compilation_cache (line 583) | def add_compilation_cache(url: str, data: str) -> AddCompilationCacheC... method capture_snapshot (line 600) | def capture_snapshot( method clear_compilation_cache (line 618) | def clear_compilation_cache() -> ClearCompilationCacheCommand: method crash (line 625) | def crash() -> CrashCommand: method generate_test_report (line 632) | def generate_test_report( method get_ad_script_ancestry_ids (line 653) | def get_ad_script_ancestry_ids( method get_app_id (line 671) | def get_app_id( method get_installability_errors (line 694) | def get_installability_errors() -> GetInstallabilityErrorsCommand: method get_origin_trials (line 701) | def get_origin_trials(frame_id: str) -> GetOriginTrialsCommand: method get_permissions_policy_state (line 717) | def get_permissions_policy_state( method get_resource_content (line 727) | def get_resource_content( method get_resource_tree (line 738) | def get_resource_tree() -> GetResourceTreeCommand: method produce_compilation_cache (line 745) | def produce_compilation_cache( method screencast_frame_ack (line 755) | def screencast_frame_ack( method search_in_resource (line 765) | def search_in_resource( method set_ad_blocking_enabled (line 783) | def set_ad_blocking_enabled( method set_font_families (line 793) | def set_font_families( method set_font_sizes (line 804) | def set_font_sizes( method set_prerendering_allowed (line 814) | def set_prerendering_allowed( method set_rph_registration_mode (line 824) | def set_rph_registration_mode( method set_spc_transaction_mode (line 834) | def set_spc_transaction_mode( method set_web_lifecycle_state (line 844) | def set_web_lifecycle_state( method start_screencast (line 854) | def start_screencast( method stop_screencast (line 876) | def stop_screencast() -> StopScreencastCommand: method wait_for_debugger (line 883) | def wait_for_debugger() -> WaitForDebuggerCommand: FILE: pydoll/commands/runtime_commands.py class RuntimeCommands (line 49) | class RuntimeCommands: method add_binding (line 66) | def add_binding(name: str, execution_context_name: Optional[str] = Non... method await_promise (line 84) | def await_promise( method call_function_on (line 110) | def call_function_on( method compile_script (line 179) | def compile_script( method disable (line 207) | def disable() -> DisableCommand: method enable (line 217) | def enable() -> EnableCommand: method evaluate (line 227) | def evaluate( # noqa: PLR0912 method get_properties (line 307) | def get_properties( method global_lexical_scope_names (line 341) | def global_lexical_scope_names( method query_objects (line 362) | def query_objects( method release_object (line 383) | def release_object( method release_object_group (line 400) | def release_object_group( method remove_binding (line 416) | def remove_binding( method run_script (line 432) | def run_script( method set_async_call_stack_depth (line 478) | def set_async_call_stack_depth( method set_custom_object_formatter_enabled (line 494) | def set_custom_object_formatter_enabled( method set_max_call_stack_size_to_capture (line 511) | def set_max_call_stack_size_to_capture( FILE: pydoll/commands/storage_commands.py class StorageCommands (line 87) | class StorageCommands: # noqa: PLR0904 method clear_cookies (line 107) | def clear_cookies(browser_context_id: Optional[str] = None) -> ClearCo... method clear_data_for_origin (line 124) | def clear_data_for_origin(origin: str, storage_types: str) -> ClearDat... method clear_data_for_storage_key (line 141) | def clear_data_for_storage_key( method get_cookies (line 163) | def get_cookies(browser_context_id: Optional[str] = None) -> GetCookie... method get_storage_key_for_frame (line 181) | def get_storage_key_for_frame(frame_id: str) -> GetStorageKeyForFrameC... method get_usage_and_quota (line 199) | def get_usage_and_quota(origin: str) -> GetUsageAndQuotaCommand: method set_cookies (line 219) | def set_cookies( method set_protected_audience_k_anonymity (line 239) | def set_protected_audience_k_anonymity( method track_cache_storage_for_origin (line 261) | def track_cache_storage_for_origin(origin: str) -> TrackCacheStorageFo... method track_cache_storage_for_storage_key (line 279) | def track_cache_storage_for_storage_key( method track_indexed_db_for_origin (line 300) | def track_indexed_db_for_origin(origin: str) -> TrackIndexedDBForOrigi... method track_indexed_db_for_storage_key (line 319) | def track_indexed_db_for_storage_key(storage_key: str) -> TrackIndexed... method untrack_cache_storage_for_origin (line 338) | def untrack_cache_storage_for_origin(origin: str) -> UntrackCacheStora... method untrack_cache_storage_for_storage_key (line 356) | def untrack_cache_storage_for_storage_key( method untrack_indexed_db_for_origin (line 377) | def untrack_indexed_db_for_origin(origin: str) -> UntrackIndexedDBForO... method untrack_indexed_db_for_storage_key (line 395) | def untrack_indexed_db_for_storage_key( method clear_shared_storage_entries (line 415) | def clear_shared_storage_entries(owner_origin: str) -> ClearSharedStor... method clear_trust_tokens (line 432) | def clear_trust_tokens(issuer_origin: str) -> ClearTrustTokensCommand: method delete_shared_storage_entry (line 451) | def delete_shared_storage_entry(owner_origin: str, key: str) -> Delete... method delete_storage_bucket (line 466) | def delete_storage_bucket(bucket: StorageBucket) -> DeleteStorageBucke... method get_affected_urls_for_third_party_cookie_metadata (line 484) | def get_affected_urls_for_third_party_cookie_metadata( method get_interest_group_details (line 510) | def get_interest_group_details(owner_origin: str, name: str) -> GetInt... method get_related_website_sets (line 528) | def get_related_website_sets() -> GetRelatedWebsiteSetsCommand: method get_shared_storage_entries (line 541) | def get_shared_storage_entries(owner_origin: str) -> GetSharedStorageE... method get_shared_storage_metadata (line 555) | def get_shared_storage_metadata(owner_origin: str) -> GetSharedStorage... method get_trust_tokens (line 571) | def get_trust_tokens() -> GetTrustTokensCommand: method override_quota_for_origin (line 582) | def override_quota_for_origin( method reset_shared_storage_budget (line 605) | def reset_shared_storage_budget(owner_origin: str) -> ResetSharedStora... method run_bounce_tracking_mitigations (line 622) | def run_bounce_tracking_mitigations() -> RunBounceTrackingMitigationsC... method send_pending_attribution_reports (line 636) | def send_pending_attribution_reports() -> SendPendingAttributionReport... method set_attribution_reporting_local_testing_mode (line 651) | def set_attribution_reporting_local_testing_mode( method set_attribution_reporting_tracking (line 673) | def set_attribution_reporting_tracking(enable: bool) -> SetAttribution... method set_interest_group_auction_tracking (line 688) | def set_interest_group_auction_tracking(enable: bool) -> SetInterestGr... method set_interest_group_tracking (line 706) | def set_interest_group_tracking(enable: bool) -> SetInterestGroupTrack... method set_shared_storage_entry (line 720) | def set_shared_storage_entry( method set_shared_storage_tracking (line 741) | def set_shared_storage_tracking(enable: bool) -> SetSharedStorageTrack... method set_storage_bucket_tracking (line 757) | def set_storage_bucket_tracking( FILE: pydoll/commands/target_commands.py class TargetCommands (line 44) | class TargetCommands: method activate_target (line 57) | def activate_target(target_id: str) -> ActivateTargetCommand: method attach_to_target (line 71) | def attach_to_target(target_id: str, flatten: Optional[bool] = None) -... method close_target (line 93) | def close_target(target_id: str) -> CloseTargetCommand: method create_browser_context (line 110) | def create_browser_context( method create_target (line 152) | def create_target( method detach_from_target (line 226) | def detach_from_target(session_id: Optional[str] = None) -> DetachFrom... method dispose_browser_context (line 245) | def dispose_browser_context(browser_context_id: str) -> DisposeBrowser... method get_browser_contexts (line 262) | def get_browser_contexts() -> GetBrowserContextsCommand: method get_targets (line 276) | def get_targets(filter: Optional[list] = None) -> GetTargetsCommand: method set_auto_attach (line 299) | def set_auto_attach( method set_discover_targets (line 335) | def set_discover_targets( method attach_to_browser_target (line 359) | def attach_to_browser_target(session_id: str) -> AttachToBrowserTarget... method get_target_info (line 378) | def get_target_info(target_id: str) -> GetTargetInfoCommand: method set_remote_locations (line 396) | def set_remote_locations(locations: list[RemoteLocation]) -> SetRemote... FILE: pydoll/connection/connection_handler.py class ConnectionHandler (line 31) | class ConnectionHandler: method __init__ (line 39) | def __init__( method network_logs (line 73) | def network_logs(self): method dialog (line 78) | def dialog(self): method ping (line 82) | async def ping(self) -> bool: method execute_command (line 92) | async def execute_command( method register_callback (line 137) | async def register_callback( method remove_callback (line 163) | async def remove_callback(self, callback_id: int) -> bool: method clear_callbacks (line 169) | async def clear_callbacks(self): method close (line 174) | async def close(self): method _ensure_active_connection (line 185) | async def _ensure_active_connection(self): method _establish_new_connection (line 191) | async def _establish_new_connection(self): method _resolve_ws_address (line 202) | async def _resolve_ws_address(self): method _handle_connection_loss (line 215) | async def _handle_connection_loss(self): method _receive_events (line 226) | async def _receive_events(self): method _incoming_messages (line 237) | async def _incoming_messages(self) -> AsyncGenerator[Union[str, bytes]... method _process_single_message (line 244) | async def _process_single_message(self, raw_message: str): method _parse_message (line 258) | def _parse_message(raw_message: str) -> Union[CDPEvent, Response, None]: method _is_command_response (line 267) | def _is_command_response(message: Union[CDPEvent, Response]) -> bool: method _handle_command_message (line 271) | async def _handle_command_message(self, message: Response): method _handle_event_message (line 276) | async def _handle_event_message(self, message: CDPEvent): method __repr__ (line 282) | def __repr__(self): method __str__ (line 286) | def __str__(self): method __aenter__ (line 290) | async def __aenter__(self): method __aexit__ (line 294) | async def __aexit__(self, exc_type, exc_val, exc_tb): FILE: pydoll/connection/managers/commands_manager.py class CommandsManager (line 13) | class CommandsManager: method __init__ (line 21) | def __init__(self) -> None: method create_command_future (line 27) | def create_command_future(self, command: Command) -> asyncio.Future: method resolve_command (line 46) | def resolve_command(self, response_id: int, result: str): method remove_pending_command (line 53) | def remove_pending_command(self, command_id: int): FILE: pydoll/connection/managers/events_manager.py class EventsManager (line 21) | class EventsManager: method __init__ (line 29) | def __init__(self) -> None: method register_callback (line 38) | def register_callback( method remove_callback (line 64) | def remove_callback(self, callback_id: int) -> bool: method clear_callbacks (line 75) | def clear_callbacks(self): method process_event (line 81) | async def process_event(self, event_data: CDPEvent): method _update_network_logs (line 105) | def _update_network_logs(self, event_data: RequestWillBeSentEvent): method _trigger_callbacks (line 110) | async def _trigger_callbacks(self, event_name: str, event_data: CDPEve... FILE: pydoll/constants.py class By (line 4) | class By(str, Enum): class PageLoadState (line 13) | class PageLoadState(str, Enum): class ScrollPosition (line 19) | class ScrollPosition(str, Enum): class Scripts (line 26) | class Scripts: class Key (line 493) | class Key(tuple[str, int], Enum): class BrowserType (line 603) | class BrowserType(Enum): class TypoType (line 608) | class TypoType(str, Enum): FILE: pydoll/decorators.py class RetryConfig (line 12) | class RetryConfig: method __init__ (line 13) | def __init__( method calculate_delay (line 27) | def calculate_delay(self, attempt: int) -> float: method call_callback (line 32) | async def call_callback(self, caller_instance: Any) -> None: method handle_delay (line 53) | async def handle_delay(self, attempt: int) -> None: method is_matching_exception (line 64) | def is_matching_exception(self, exc: Exception) -> bool: function retry (line 70) | def retry( FILE: pydoll/elements/mixins/find_elements_mixin.py function create_web_element (line 36) | def create_web_element(*args, **kwargs): class FindElementsMixin (line 48) | class FindElementsMixin: method _build_text_expression (line 64) | def _build_text_expression(selector: str, method: str) -> Optional[str]: method find (line 71) | async def find( method find (line 85) | async def find( method find (line 99) | async def find( method find (line 113) | async def find( method find (line 127) | async def find( method find (line 140) | async def find( method query (line 210) | async def query( method query (line 219) | async def query( method query (line 228) | async def query( method query (line 237) | async def query( method query (line 246) | async def query( method query (line 254) | async def query( method find_or_wait_element (line 292) | async def find_or_wait_element( method _find_across_iframes (line 363) | async def _find_across_iframes( method _attempt_find_across_iframes (line 413) | async def _attempt_find_across_iframes( method _find_element (line 447) | async def _find_element( method _find_elements (line 512) | async def _find_elements(self, by: By, value: str, raise_exc: bool = T... method _get_object_attributes (line 594) | async def _get_object_attributes(self, object_id: str) -> list[str]: method _get_by_and_value (line 608) | def _get_by_and_value( method _build_xpath (line 652) | def _build_xpath( method _get_expression_type (line 674) | def _get_expression_type(expression: str) -> By: method _describe_node (line 684) | async def _describe_node(self, object_id: str = '') -> Node: method _apply_iframe_context_to_element (line 699) | def _apply_iframe_context_to_element( method _resolve_routing (line 717) | def _resolve_routing(self) -> tuple[ConnectionHandler, Optional[str]]: method _execute_command (line 729) | async def _execute_command( method _get_find_element_command (line 738) | def _get_find_element_command( method _get_find_elements_command (line 790) | def _get_find_elements_command( method _get_find_element_by_xpath_command (line 833) | def _get_find_element_by_xpath_command( method _get_find_elements_by_xpath_command (line 863) | def _get_find_elements_by_xpath_command( method _ensure_relative_xpath (line 894) | def _ensure_relative_xpath(xpath: str) -> str: method _has_object_id_key (line 903) | def _has_object_id_key(response: Union[EvaluateResponse, CallFunctionO... FILE: pydoll/elements/shadow_root.py class ShadowRoot (line 18) | class ShadowRoot(FindElementsMixin): method __init__ (line 35) | def __init__( method mode (line 68) | def mode(self) -> ShadowRootType: method host_element (line 73) | def host_element(self) -> WebElement | None: method inner_html (line 78) | async def inner_html(self) -> str: method __repr__ (line 85) | def __repr__(self) -> str: method __str__ (line 88) | def __str__(self) -> str: FILE: pydoll/elements/utils/selector_parser.py class SelectorParser (line 40) | class SelectorParser: method get_expression_type (line 54) | def get_expression_type(expression: str) -> By: method build_xpath (line 71) | def build_xpath( method ensure_relative_xpath (line 118) | def ensure_relative_xpath(xpath: str) -> str: method build_text_expression (line 131) | def build_text_expression(selector: str, method: str) -> Optional[str]: method parse_iframe_segments_xpath (line 165) | def parse_iframe_segments_xpath(expression: str) -> list[tuple[By, str]]: method parse_iframe_segments_css (line 203) | def parse_iframe_segments_css(expression: str) -> list[tuple[By, str]]: method _is_at_nesting_depth_zero (line 240) | def _is_at_nesting_depth_zero( method _detect_xpath_leading_separator (line 271) | def _detect_xpath_leading_separator(expression: str) -> tuple[str, int]: method _tokenize_xpath_steps (line 281) | def _tokenize_xpath_steps(expression: str) -> list[tuple[str, str]]: method _is_iframe_xpath_step (line 313) | def _is_iframe_xpath_step(step_text: str) -> bool: method _build_xpath_segments (line 320) | def _build_xpath_segments( method _tokenize_css_compounds (line 354) | def _tokenize_css_compounds(expression: str) -> list[tuple[str, str | ... method _consume_css_combinator (line 386) | def _consume_css_combinator(expression: str, start: int) -> tuple[str,... method _is_iframe_css_compound (line 401) | def _is_iframe_css_compound(compound_text: str) -> bool: method _format_css_combinator (line 412) | def _format_css_combinator(combinator: str) -> str: method _build_css_segments (line 419) | def _build_css_segments( FILE: pydoll/elements/web_element.py class WebElement (line 74) | class WebElement(FindElementsMixin): # noqa: PLR0904 method __init__ (line 87) | def __init__( method _get_keyboard (line 132) | def _get_keyboard(self) -> Keyboard: method _get_iframe_resolver (line 138) | def _get_iframe_resolver(self) -> IFrameContextResolver: method attributes (line 145) | def attributes(self) -> dict[str, str]: method value (line 150) | def value(self) -> Optional[str]: method class_name (line 155) | def class_name(self) -> Optional[str]: method id (line 160) | def id(self) -> Optional[str]: method tag_name (line 165) | def tag_name(self) -> Optional[str]: method is_iframe (line 170) | def is_iframe(self) -> bool: method is_enabled (line 175) | def is_enabled(self) -> bool: method text (line 180) | async def text(self) -> str: method bounds (line 196) | async def bounds(self) -> Quad: method inner_html (line 209) | async def inner_html(self) -> str: method iframe_context (line 224) | async def iframe_context(self) -> Optional[IFrameContext]: method get_attribute (line 245) | def get_attribute(self, name: str) -> Optional[str]: method get_bounds_using_js (line 257) | async def get_bounds_using_js(self) -> dict[str, int]: method get_parent_element (line 268) | async def get_parent_element(self) -> WebElement: method get_shadow_root (line 282) | async def get_shadow_root(self, timeout: float = 0) -> ShadowRoot: method _get_shadow_root (line 316) | async def _get_shadow_root(self) -> ShadowRoot: method get_children_elements (line 346) | async def get_children_elements( method get_siblings_elements (line 377) | async def get_siblings_elements( method take_screenshot (line 404) | async def take_screenshot( method scroll_into_view (line 477) | async def scroll_into_view(self): method wait_until (line 483) | async def wait_until( method click_using_js (line 529) | async def click_using_js(self): method click (line 555) | async def click( method focus (line 633) | async def focus(self): method clear (line 637) | async def clear(self): method insert_text (line 656) | async def insert_text(self, text: str): method set_input_files (line 690) | async def set_input_files(self, files: str | Path | list[str | Path]): method type_text (line 711) | async def type_text( method key_down (line 730) | async def key_down(self, key: Key, modifiers: Optional[KeyModifier] = ... method key_up (line 758) | async def key_up(self, key: Key): method press_keyboard_key (line 782) | async def press_keyboard_key( method is_editable (line 806) | async def is_editable(self) -> bool: method is_visible (line 818) | async def is_visible(self): method is_on_top (line 825) | async def is_on_top(self): method is_interactable (line 832) | async def is_interactable(self): method execute_script (line 839) | async def execute_script( method __repr__ (line 922) | def __repr__(self): method _is_inside_iframe (line 927) | def _is_inside_iframe(self) -> bool: method _get_iframe_inner_html (line 931) | async def _get_iframe_inner_html(self) -> str: method _apply_routing_from_context (line 945) | def _apply_routing_from_context(self) -> None: method _click_option_tag (line 959) | async def _click_option_tag(self): method _get_family_elements (line 969) | async def _get_family_elements( method _def_attributes (line 1015) | def _def_attributes(self, attributes_list: list[str]): method _is_option_tag (line 1024) | def _is_option_tag(self): method _is_option_element (line 1028) | async def _is_option_element(self) -> bool: method _calculate_center (line 1052) | def _calculate_center(bounds: list) -> tuple: FILE: pydoll/exceptions.py class PydollException (line 10) | class PydollException(Exception): method __init__ (line 15) | def __init__(self, message: str = ''): method __str__ (line 18) | def __str__(self): class ConnectionException (line 22) | class ConnectionException(PydollException): class ConnectionFailed (line 28) | class ConnectionFailed(ConnectionException): class ReconnectionFailed (line 34) | class ReconnectionFailed(ConnectionException): class WebSocketConnectionClosed (line 40) | class WebSocketConnectionClosed(ConnectionException): class NetworkError (line 46) | class NetworkError(ConnectionException): class BrowserException (line 52) | class BrowserException(PydollException): class BrowserNotRunning (line 58) | class BrowserNotRunning(BrowserException): class FailedToStartBrowser (line 64) | class FailedToStartBrowser(BrowserException): class UnsupportedOS (line 70) | class UnsupportedOS(BrowserException): class NoValidTabFound (line 76) | class NoValidTabFound(BrowserException): class InvalidConnectionPort (line 82) | class InvalidConnectionPort(BrowserException): class InvalidWebSocketAddress (line 88) | class InvalidWebSocketAddress(BrowserException): class MissingTargetOrWebSocket (line 94) | class MissingTargetOrWebSocket(BrowserException): class ProtocolException (line 100) | class ProtocolException(PydollException): class TopLevelTargetRequired (line 106) | class TopLevelTargetRequired(ProtocolException): class InvalidCommand (line 112) | class InvalidCommand(ProtocolException): class InvalidResponse (line 118) | class InvalidResponse(ProtocolException): class ResendCommandFailed (line 124) | class ResendCommandFailed(ProtocolException): class CommandExecutionTimeout (line 130) | class CommandExecutionTimeout(ProtocolException): class InvalidCallback (line 136) | class InvalidCallback(ProtocolException): class EventNotSupported (line 142) | class EventNotSupported(ProtocolException): class ElementException (line 148) | class ElementException(PydollException): class ElementNotFound (line 154) | class ElementNotFound(ElementException): class ElementNotVisible (line 160) | class ElementNotVisible(ElementException): class ElementNotInteractable (line 166) | class ElementNotInteractable(ElementException): class ClickIntercepted (line 172) | class ClickIntercepted(ElementException): class ElementNotAFileInput (line 178) | class ElementNotAFileInput(ElementException): class ShadowRootNotFound (line 184) | class ShadowRootNotFound(ElementException): class TimeoutException (line 190) | class TimeoutException(PydollException): class PageLoadTimeout (line 196) | class PageLoadTimeout(TimeoutException): class WaitElementTimeout (line 202) | class WaitElementTimeout(TimeoutException): class DownloadTimeout (line 208) | class DownloadTimeout(TimeoutException): class ConfigurationException (line 214) | class ConfigurationException(PydollException): class InvalidOptionsObject (line 220) | class InvalidOptionsObject(ConfigurationException): class InvalidBrowserPath (line 226) | class InvalidBrowserPath(ConfigurationException): class ArgumentAlreadyExistsInOptions (line 232) | class ArgumentAlreadyExistsInOptions(ConfigurationException): class ArgumentNotFoundInOptions (line 238) | class ArgumentNotFoundInOptions(ConfigurationException): class InvalidFileExtension (line 244) | class InvalidFileExtension(ConfigurationException): class InvalidTabInitialization (line 250) | class InvalidTabInitialization(ConfigurationException): class MissingScreenshotPath (line 256) | class MissingScreenshotPath(ConfigurationException): class DialogException (line 262) | class DialogException(PydollException): class NoDialogPresent (line 268) | class NoDialogPresent(DialogException): class NotAnIFrame (line 274) | class NotAnIFrame(PydollException): class InvalidIFrame (line 280) | class InvalidIFrame(PydollException): class IFrameNotFound (line 286) | class IFrameNotFound(PydollException): class NetworkEventsNotEnabled (line 292) | class NetworkEventsNotEnabled(PydollException): class RequestException (line 298) | class RequestException(PydollException): class HTTPError (line 304) | class HTTPError(RequestException): class HarRecordingError (line 310) | class HarRecordingError(RequestException): class ScriptException (line 316) | class ScriptException(PydollException): class InvalidScriptWithElement (line 322) | class InvalidScriptWithElement(ScriptException): class WrongPrefsDict (line 328) | class WrongPrefsDict(PydollException): class ElementPreconditionError (line 334) | class ElementPreconditionError(ElementException): FILE: pydoll/interactions/iframe.py class IFrameContext (line 24) | class IFrameContext: class IFrameContextResolver (line 35) | class IFrameContextResolver: method __init__ (line 38) | def __init__(self, element: WebElement): method resolve (line 41) | async def resolve(self) -> IFrameContext: method _get_base_session (line 94) | def _get_base_session(self) -> tuple[ConnectionHandler, Optional[str]]: method _describe_element_node (line 103) | async def _describe_element_node( method _extract_frame_metadata (line 123) | def _extract_frame_metadata( method _resolve_frame_by_owner (line 148) | async def _resolve_frame_by_owner( method _find_frame_by_owner (line 163) | async def _find_frame_by_owner( method _get_frame_tree_for (line 183) | async def _get_frame_tree_for( method _walk_frames (line 195) | def _walk_frames(tree: FrameTree) -> Iterable[Frame]: method _owner_backend_for (line 205) | async def _owner_backend_for( method _resolve_oopif_if_needed (line 217) | async def _resolve_oopif_if_needed( method _resolve_oopif_by_parent (line 254) | async def _resolve_oopif_by_parent( method _find_child_by_parent (line 376) | def _find_child_by_parent(tree: FrameTree, parent_id: str) -> Optional... method _create_isolated_world_for_frame (line 390) | async def _create_isolated_world_for_frame( method _get_document_object_id (line 409) | async def _get_document_object_id( FILE: pydoll/interactions/keyboard.py class CommandExecutor (line 23) | class CommandExecutor(Protocol): method _execute_command (line 26) | async def _execute_command(self, command: Any) -> Any: ... class TypoResult (line 30) | class TypoResult: class TimingConfig (line 38) | class TimingConfig: class TypoConfig (line 62) | class TypoConfig: class Keyboard (line 72) | class Keyboard: method __init__ (line 83) | def __init__( method _ensure_focus (line 102) | async def _ensure_focus(self): method press (line 107) | async def press( method down (line 130) | async def down(self, key: Key, modifiers: Optional[KeyModifier] = None): method up (line 149) | async def up(self, key: Key): method hotkey (line 166) | async def hotkey(self, key1: Key, key2: Key, key3: Optional[Key] = None): method type_text (line 196) | async def type_text( method _type_text_humanized (line 231) | async def _type_text_humanized(self, text: str): method _type_char (line 246) | async def _type_char(self, char: str): method _type_backspace (line 270) | async def _type_backspace(self): method _process_char_with_typo (line 276) | async def _process_char_with_typo( method _handle_typo (line 289) | async def _handle_typo( method _do_adjacent_typo (line 319) | async def _do_adjacent_typo(self, correct_char: str, wrong_char: str): method _do_transpose_typo (line 330) | async def _do_transpose_typo(self, current_char: str, next_char: str): method _do_double_typo (line 348) | async def _do_double_typo(self, current_char: str): method _do_skip_typo (line 357) | async def _do_skip_typo(self, current_char: str): method _do_missed_space_typo (line 363) | async def _do_missed_space_typo(self, space_char: str, next_char: str): method _apply_realistic_delay (line 378) | async def _apply_realistic_delay(self, typed_char: str): method _should_make_typo (line 395) | def _should_make_typo() -> bool: method _generate_typo (line 399) | def _generate_typo(self, current_char: str, next_char: Optional[str]) ... method _select_typo_type (line 404) | def _select_typo_type(self) -> TypoType: method _create_typo (line 423) | def _create_typo( method _create_transpose_typo (line 440) | def _create_transpose_typo(self, current_char: str, next_char: Optiona... method _create_missed_space_typo (line 446) | def _create_missed_space_typo(self, current_char: str) -> TypoResult: method _create_adjacent_typo (line 453) | def _create_adjacent_typo(original_char: str) -> TypoResult: method _split_modifiers_and_keys (line 468) | def _split_modifiers_and_keys(keys: list[Key]) -> tuple[list[Key], lis... method _calculate_modifier_value (line 476) | def _calculate_modifier_value(modifiers: list[Key]) -> Optional[KeyMod... FILE: pydoll/interactions/mouse.py class MouseTimingConfig (line 26) | class MouseTimingConfig: class Mouse (line 67) | class Mouse: method __init__ (line 102) | def __init__( method timing (line 123) | def timing(self) -> MouseTimingConfig: method timing (line 128) | def timing(self, config: MouseTimingConfig) -> None: method debug (line 137) | def debug(self) -> bool: method debug (line 142) | def debug(self, value: bool) -> None: method move (line 147) | async def move( method click (line 168) | async def click( method double_click (line 195) | async def double_click( method down (line 214) | async def down(self, button: MouseButton = MouseButton.LEFT) -> None: method up (line 223) | async def up(self, button: MouseButton = MouseButton.LEFT) -> None: method drag (line 232) | async def drag( method _move_humanized (line 260) | async def _move_humanized(self, target_x: float, target_y: float) -> N... method _move_with_overshoot (line 287) | async def _move_with_overshoot( method _perform_movement_loop (line 308) | async def _perform_movement_loop( method _compute_tremor_sigma (line 350) | def _compute_tremor_sigma( method _click_humanized (line 366) | async def _click_humanized( method _drag_humanized (line 397) | async def _drag_humanized( method _get_control_points (line 427) | def _get_control_points( method _dispatch_move (line 443) | async def _dispatch_move(self, x: float, y: float) -> None: method _dispatch_button (line 456) | async def _dispatch_button( method _debug_draw_dot (line 477) | async def _debug_draw_dot(self, x: float, y: float, radius: int, color... FILE: pydoll/interactions/scroll.py class ScrollTimingConfig (line 20) | class ScrollTimingConfig: class Scroll (line 41) | class Scroll: method __init__ (line 50) | def __init__( method by (line 65) | async def by( method to_top (line 96) | async def to_top(self, smooth: bool = True, humanize: bool = False): method to_bottom (line 112) | async def to_bottom(self, smooth: bool = True, humanize: bool = False): method _scroll_to_end_humanized (line 128) | async def _scroll_to_end_humanized(self, position: ScrollPosition): method _scroll_humanized (line 178) | async def _scroll_humanized(self, position: ScrollPosition, target_dis... method _perform_scroll_loop (line 211) | async def _perform_scroll_loop( method _calculate_effective_distance (line 261) | def _calculate_effective_distance(self, target_distance: float) -> float: method _calculate_duration (line 272) | def _calculate_duration(self, distance: float) -> float: method _scroll_correction (line 279) | async def _scroll_correction(self, is_vertical: bool, direction: int, ... method _dispatch_scroll_event (line 303) | async def _dispatch_scroll_event(self, delta_x: int, delta_y: int): method _get_viewport_center (line 315) | async def _get_viewport_center(self) -> tuple[int, int]: method _get_current_scroll_y (line 330) | async def _get_current_scroll_y(self) -> float: method _get_remaining_scroll_to_bottom (line 336) | async def _get_remaining_scroll_to_bottom(self) -> float: method _get_axis_and_distance (line 343) | def _get_axis_and_distance( method _get_behavior (line 367) | def _get_behavior(smooth: bool) -> str: method _execute_script_await_promise (line 379) | async def _execute_script_await_promise(self, script: str): FILE: pydoll/interactions/utils.py class CubicBezier (line 7) | class CubicBezier: method __init__ (line 14) | def __init__(self, point1_x: float, point1_y: float, point2_x: float, ... method sample_curve_x (line 23) | def sample_curve_x(self, time_progress: float) -> float: method sample_curve_y (line 29) | def sample_curve_y(self, time_progress: float) -> float: method sample_curve_derivative_x (line 35) | def sample_curve_derivative_x(self, time_progress: float) -> float: method solve_curve_x (line 40) | def solve_curve_x(self, target_x: float, epsilon: float = 1e-6) -> float: method solve (line 74) | def solve(self, input_x: float) -> float: function minimum_jerk (line 79) | def minimum_jerk(t: float) -> float: function bezier_2d (line 90) | def bezier_2d( function fitts_duration (line 111) | def fitts_duration( function random_control_points (line 123) | def random_control_points( FILE: pydoll/protocol/base.py class EmptyParams (line 11) | class EmptyParams(TypedDict): class EmptyResponse (line 17) | class EmptyResponse(TypedDict): class Command (line 23) | class Command(TypedDict, Generic[T_CommandParams, T_CommandResponse]): class Response (line 38) | class Response(TypedDict, Generic[T_CommandResponse]): class CDPEvent (line 52) | class CDPEvent(TypedDict, Generic[T_EventParams]): FILE: pydoll/protocol/browser/events.py class BrowserEvent (line 9) | class BrowserEvent(str, Enum): class DownloadProgressEventParams (line 43) | class DownloadProgressEventParams(TypedDict): class DownloadWillBeginEventParams (line 51) | class DownloadWillBeginEventParams(TypedDict): FILE: pydoll/protocol/browser/methods.py class BrowserMethod (line 20) | class BrowserMethod(str, Enum): class SetPermissionParams (line 45) | class SetPermissionParams(TypedDict): class GrantPermissionsParams (line 54) | class GrantPermissionsParams(TypedDict): class ResetPermissionsParams (line 62) | class ResetPermissionsParams(TypedDict): class SetDownloadBehaviorParams (line 68) | class SetDownloadBehaviorParams(TypedDict): class CancelDownloadParams (line 77) | class CancelDownloadParams(TypedDict): class GetHistogramsParams (line 84) | class GetHistogramsParams(TypedDict): class GetHistogramParams (line 91) | class GetHistogramParams(TypedDict): class GetWindowBoundsParams (line 98) | class GetWindowBoundsParams(TypedDict): class GetWindowForTargetParams (line 104) | class GetWindowForTargetParams(TypedDict): class SetWindowBoundsParams (line 110) | class SetWindowBoundsParams(TypedDict): class SetContentsSizeParams (line 117) | class SetContentsSizeParams(TypedDict): class SetDockTileParams (line 125) | class SetDockTileParams(TypedDict): class ExecuteBrowserCommandParams (line 132) | class ExecuteBrowserCommandParams(TypedDict): class AddPrivacySandboxEnrollmentOverrideParams (line 138) | class AddPrivacySandboxEnrollmentOverrideParams(TypedDict): class AddPrivacySandboxCoordinatorKeyConfigParams (line 144) | class AddPrivacySandboxCoordinatorKeyConfigParams(TypedDict): class GetVersionResult (line 154) | class GetVersionResult(TypedDict): class GetBrowserCommandLineResult (line 164) | class GetBrowserCommandLineResult(TypedDict): class GetHistogramsResult (line 170) | class GetHistogramsResult(TypedDict): class GetHistogramResult (line 176) | class GetHistogramResult(TypedDict): class GetWindowBoundsResult (line 182) | class GetWindowBoundsResult(TypedDict): class GetWindowForTargetResult (line 188) | class GetWindowForTargetResult(TypedDict): FILE: pydoll/protocol/browser/types.py class WindowState (line 9) | class WindowState(str, Enum): class DownloadBehavior (line 18) | class DownloadBehavior(str, Enum): class DownloadProgressState (line 27) | class DownloadProgressState(str, Enum): class Bounds (line 35) | class Bounds(TypedDict, total=False): class PermissionType (line 45) | class PermissionType(str, Enum): class PermissionSetting (line 87) | class PermissionSetting(str, Enum): class PermissionDescriptor (line 95) | class PermissionDescriptor(TypedDict, total=False): class BrowserCommandId (line 111) | class BrowserCommandId(str, Enum): class Bucket (line 119) | class Bucket(TypedDict): class Histogram (line 127) | class Histogram(TypedDict): class PrivacySandboxAPI (line 136) | class PrivacySandboxAPI(str, Enum): FILE: pydoll/protocol/debugger/types.py class SearchMatch (line 4) | class SearchMatch(TypedDict): FILE: pydoll/protocol/dom/events.py class DomEvent (line 9) | class DomEvent(str, Enum): class AttributeModifiedEventParams (line 158) | class AttributeModifiedEventParams(TypedDict): class AttributeRemovedEventParams (line 166) | class AttributeRemovedEventParams(TypedDict): class CharacterDataModifiedEventParams (line 173) | class CharacterDataModifiedEventParams(TypedDict): class ChildNodeCountUpdatedEventParams (line 180) | class ChildNodeCountUpdatedEventParams(TypedDict): class ChildNodeInsertedEventParams (line 187) | class ChildNodeInsertedEventParams(TypedDict): class ChildNodeRemovedEventParams (line 195) | class ChildNodeRemovedEventParams(TypedDict): class DistributedNodesUpdatedEventParams (line 202) | class DistributedNodesUpdatedEventParams(TypedDict): class DocumentUpdatedEventParams (line 209) | class DocumentUpdatedEventParams(TypedDict): class InlineStyleInvalidatedEventParams (line 215) | class InlineStyleInvalidatedEventParams(TypedDict): class PseudoElementAddedEventParams (line 221) | class PseudoElementAddedEventParams(TypedDict): class PseudoElementRemovedEventParams (line 228) | class PseudoElementRemovedEventParams(TypedDict): class ScrollableFlagUpdatedEventParams (line 235) | class ScrollableFlagUpdatedEventParams(TypedDict): class ShadowRootPoppedEventParams (line 242) | class ShadowRootPoppedEventParams(TypedDict): class ShadowRootPushedEventParams (line 249) | class ShadowRootPushedEventParams(TypedDict): class SetChildNodesEventParams (line 256) | class SetChildNodesEventParams(TypedDict): class TopLayerElementsUpdatedEventParams (line 263) | class TopLayerElementsUpdatedEventParams(TypedDict): FILE: pydoll/protocol/dom/methods.py class DomMethod (line 29) | class DomMethod(str, Enum): class CollectClassNamesFromSubtreeParams (line 87) | class CollectClassNamesFromSubtreeParams(TypedDict): class CopyToParams (line 93) | class CopyToParams(TypedDict, total=False): class DescribeNodeParams (line 101) | class DescribeNodeParams(TypedDict, total=False): class ScrollIntoViewIfNeededParams (line 111) | class ScrollIntoViewIfNeededParams(TypedDict, total=False): class DiscardSearchResultsParams (line 120) | class DiscardSearchResultsParams(TypedDict): class EnableParams (line 126) | class EnableParams(TypedDict, total=False): class FocusParams (line 132) | class FocusParams(TypedDict, total=False): class GetAttributesParams (line 140) | class GetAttributesParams(TypedDict): class GetBoxModelParams (line 146) | class GetBoxModelParams(TypedDict, total=False): class GetContentQuadsParams (line 154) | class GetContentQuadsParams(TypedDict, total=False): class GetDocumentParams (line 162) | class GetDocumentParams(TypedDict, total=False): class GetFlattenedDocumentParams (line 169) | class GetFlattenedDocumentParams(TypedDict, total=False): class GetNodesForSubtreeByStyleParams (line 176) | class GetNodesForSubtreeByStyleParams(TypedDict, total=False): class GetNodeForLocationParams (line 184) | class GetNodeForLocationParams(TypedDict, total=False): class GetOuterHTMLParams (line 193) | class GetOuterHTMLParams(TypedDict, total=False): class GetRelayoutBoundaryParams (line 202) | class GetRelayoutBoundaryParams(TypedDict): class GetSearchResultsParams (line 208) | class GetSearchResultsParams(TypedDict): class MoveToParams (line 216) | class MoveToParams(TypedDict, total=False): class PerformSearchParams (line 224) | class PerformSearchParams(TypedDict, total=False): class PushNodeByPathToFrontendParams (line 231) | class PushNodeByPathToFrontendParams(TypedDict): class PushNodesByBackendIdsToFrontendParams (line 237) | class PushNodesByBackendIdsToFrontendParams(TypedDict): class QuerySelectorParams (line 243) | class QuerySelectorParams(TypedDict): class QuerySelectorAllParams (line 250) | class QuerySelectorAllParams(TypedDict): class GetElementByRelationParams (line 257) | class GetElementByRelationParams(TypedDict): class RemoveAttributeParams (line 264) | class RemoveAttributeParams(TypedDict): class RemoveNodeParams (line 271) | class RemoveNodeParams(TypedDict): class RequestChildNodesParams (line 277) | class RequestChildNodesParams(TypedDict, total=False): class RequestNodeParams (line 285) | class RequestNodeParams(TypedDict): class ResolveNodeParams (line 291) | class ResolveNodeParams(TypedDict, total=False): class SetAttributeValueParams (line 300) | class SetAttributeValueParams(TypedDict): class SetAttributesAsTextParams (line 308) | class SetAttributesAsTextParams(TypedDict, total=False): class SetFileInputFilesParams (line 316) | class SetFileInputFilesParams(TypedDict, total=False): class SetNodeStackTracesEnabledParams (line 325) | class SetNodeStackTracesEnabledParams(TypedDict): class GetNodeStackTracesParams (line 331) | class GetNodeStackTracesParams(TypedDict): class GetFileInfoParams (line 337) | class GetFileInfoParams(TypedDict): class SetInspectedNodeParams (line 343) | class SetInspectedNodeParams(TypedDict): class SetNodeNameParams (line 349) | class SetNodeNameParams(TypedDict): class SetNodeValueParams (line 356) | class SetNodeValueParams(TypedDict): class SetOuterHTMLParams (line 363) | class SetOuterHTMLParams(TypedDict): class GetFrameOwnerParams (line 370) | class GetFrameOwnerParams(TypedDict): class GetContainerForNodeParams (line 376) | class GetContainerForNodeParams(TypedDict, total=False): class GetQueryingDescendantsForContainerParams (line 387) | class GetQueryingDescendantsForContainerParams(TypedDict): class GetAnchorElementParams (line 393) | class GetAnchorElementParams(TypedDict, total=False): class ForceShowPopoverParams (line 400) | class ForceShowPopoverParams(TypedDict): class CollectClassNamesFromSubtreeResult (line 408) | class CollectClassNamesFromSubtreeResult(TypedDict): class CopyToResult (line 414) | class CopyToResult(TypedDict): class DescribeNodeResult (line 420) | class DescribeNodeResult(TypedDict): class GetAttributesResult (line 426) | class GetAttributesResult(TypedDict): class GetBoxModelResult (line 432) | class GetBoxModelResult(TypedDict): class GetContentQuadsResult (line 438) | class GetContentQuadsResult(TypedDict): class GetDocumentResult (line 444) | class GetDocumentResult(TypedDict): class GetFlattenedDocumentResult (line 450) | class GetFlattenedDocumentResult(TypedDict): class GetNodesForSubtreeByStyleResult (line 456) | class GetNodesForSubtreeByStyleResult(TypedDict): class GetNodeForLocationResult (line 462) | class GetNodeForLocationResult(TypedDict, total=False): class GetOuterHTMLResult (line 470) | class GetOuterHTMLResult(TypedDict): class GetRelayoutBoundaryResult (line 476) | class GetRelayoutBoundaryResult(TypedDict): class GetSearchResultsResult (line 482) | class GetSearchResultsResult(TypedDict): class GetTopLayerElementsResult (line 488) | class GetTopLayerElementsResult(TypedDict): class GetElementByRelationResult (line 494) | class GetElementByRelationResult(TypedDict): class MoveToResult (line 500) | class MoveToResult(TypedDict): class PerformSearchResult (line 506) | class PerformSearchResult(TypedDict): class PushNodeByPathToFrontendResult (line 513) | class PushNodeByPathToFrontendResult(TypedDict): class PushNodesByBackendIdsToFrontendResult (line 519) | class PushNodesByBackendIdsToFrontendResult(TypedDict): class QuerySelectorResult (line 525) | class QuerySelectorResult(TypedDict): class QuerySelectorAllResult (line 531) | class QuerySelectorAllResult(TypedDict): class RequestNodeResult (line 537) | class RequestNodeResult(TypedDict): class ResolveNodeResult (line 543) | class ResolveNodeResult(TypedDict): class SetNodeNameResult (line 549) | class SetNodeNameResult(TypedDict): class GetNodeStackTracesResult (line 555) | class GetNodeStackTracesResult(TypedDict, total=False): class GetFileInfoResult (line 561) | class GetFileInfoResult(TypedDict): class GetDetachedDomNodesResult (line 567) | class GetDetachedDomNodesResult(TypedDict): class GetFrameOwnerResult (line 573) | class GetFrameOwnerResult(TypedDict, total=False): class GetContainerForNodeResult (line 580) | class GetContainerForNodeResult(TypedDict, total=False): class GetQueryingDescendantsForContainerResult (line 586) | class GetQueryingDescendantsForContainerResult(TypedDict): class GetAnchorElementResult (line 592) | class GetAnchorElementResult(TypedDict): class ForceShowPopoverResult (line 598) | class ForceShowPopoverResult(TypedDict): FILE: pydoll/protocol/dom/types.py class PseudoType (line 11) | class PseudoType(str, Enum): class ShadowRootType (line 54) | class ShadowRootType(str, Enum): class CompatibilityMode (line 62) | class CompatibilityMode(str, Enum): class PhysicalAxes (line 70) | class PhysicalAxes(str, Enum): class LogicalAxes (line 78) | class LogicalAxes(str, Enum): class ScrollOrientation (line 86) | class ScrollOrientation(str, Enum): class IncludeWhitespace (line 93) | class IncludeWhitespace(str, Enum): class RelationType (line 100) | class RelationType(str, Enum): class BackendNode (line 108) | class BackendNode(TypedDict): class Node (line 116) | class Node(TypedDict, total=False): class DetachedElementInfo (line 154) | class DetachedElementInfo(TypedDict): class RGBA (line 162) | class RGBA(TypedDict, total=False): class BoxModel (line 171) | class BoxModel(TypedDict, total=False): class ShapeOutsideInfo (line 183) | class ShapeOutsideInfo(TypedDict): class Rect (line 191) | class Rect(TypedDict): class CSSComputedStyleProperty (line 200) | class CSSComputedStyleProperty(TypedDict): FILE: pydoll/protocol/emulation/methods.py class EmulationMethod (line 9) | class EmulationMethod(str, Enum): class SetUserAgentOverrideParams (line 13) | class SetUserAgentOverrideParams(TypedDict): FILE: pydoll/protocol/emulation/types.py class ScreenOrientationType (line 6) | class ScreenOrientationType(str, Enum): class DisplayFeatureOrientation (line 15) | class DisplayFeatureOrientation(str, Enum): class DevicePostureType (line 22) | class DevicePostureType(str, Enum): class VirtualTimePolicy (line 29) | class VirtualTimePolicy(str, Enum): class SensorType (line 40) | class SensorType(str, Enum): class PressureSource (line 54) | class PressureSource(str, Enum): class PressureState (line 60) | class PressureState(str, Enum): class DisabledImageType (line 69) | class DisabledImageType(str, Enum): class SafeAreaInsets (line 76) | class SafeAreaInsets(TypedDict, total=False): class ScreenOrientation (line 89) | class ScreenOrientation(TypedDict): class DisplayFeature (line 96) | class DisplayFeature(TypedDict): class DevicePosture (line 109) | class DevicePosture(TypedDict): class MediaFeature (line 115) | class MediaFeature(TypedDict): class UserAgentBrandVersion (line 122) | class UserAgentBrandVersion(TypedDict): class UserAgentMetadata (line 130) | class UserAgentMetadata(TypedDict): class SensorMetadata (line 151) | class SensorMetadata(TypedDict, total=False): class SensorReadingSingle (line 159) | class SensorReadingSingle(TypedDict): class SensorReadingXYZ (line 165) | class SensorReadingXYZ(TypedDict): class SensorReadingQuaternion (line 173) | class SensorReadingQuaternion(TypedDict): class SensorReading (line 182) | class SensorReading(TypedDict, total=False): class PressureMetadata (line 190) | class PressureMetadata(TypedDict, total=False): FILE: pydoll/protocol/fetch/events.py class FetchEvent (line 10) | class FetchEvent(str, Enum): class AuthRequiredEventParams (line 66) | class AuthRequiredEventParams(TypedDict): class RequestPausedEventParams (line 76) | class RequestPausedEventParams(TypedDict): FILE: pydoll/protocol/fetch/methods.py class FetchMethod (line 15) | class FetchMethod(str, Enum): class EnableParams (line 33) | class EnableParams(TypedDict, total=False): class FailRequestParams (line 40) | class FailRequestParams(TypedDict): class FulfillRequestParams (line 47) | class FulfillRequestParams(TypedDict, total=False): class ContinueRequestParams (line 58) | class ContinueRequestParams(TypedDict, total=False): class ContinueWithAuthParams (line 69) | class ContinueWithAuthParams(TypedDict): class ContinueResponseParams (line 76) | class ContinueResponseParams(TypedDict, total=False): class GetResponseBodyParams (line 86) | class GetResponseBodyParams(TypedDict): class TakeResponseBodyAsStreamParams (line 92) | class TakeResponseBodyAsStreamParams(TypedDict): class GetResponseBodyResult (line 99) | class GetResponseBodyResult(TypedDict): class TakeResponseBodyAsStreamResult (line 106) | class TakeResponseBodyAsStreamResult(TypedDict): FILE: pydoll/protocol/fetch/types.py class RequestStage (line 8) | class RequestStage(str, Enum): class AuthChallengeSource (line 15) | class AuthChallengeSource(str, Enum): class AuthChallengeResponseType (line 22) | class AuthChallengeResponseType(str, Enum): class RequestPattern (line 30) | class RequestPattern(TypedDict, total=False): class HeaderEntry (line 38) | class HeaderEntry(TypedDict): class AuthChallenge (line 45) | class AuthChallenge(TypedDict): class AuthChallengeResponse (line 54) | class AuthChallengeResponse(TypedDict): FILE: pydoll/protocol/input/events.py class InputEvent (line 9) | class InputEvent(str, Enum): class DragInterceptedEventParams (line 28) | class DragInterceptedEventParams(TypedDict): FILE: pydoll/protocol/input/methods.py class InputMethod (line 20) | class InputMethod(str, Enum): class CancelDraggingParams (line 36) | class CancelDraggingParams(TypedDict): class DispatchDragEventParams (line 42) | class DispatchDragEventParams(TypedDict): class DispatchKeyEventParams (line 52) | class DispatchKeyEventParams(TypedDict): class DispatchMouseEventParams (line 72) | class DispatchMouseEventParams(TypedDict): class DispatchTouchEventParams (line 93) | class DispatchTouchEventParams(TypedDict): class EmulateTouchFromMouseEventParams (line 102) | class EmulateTouchFromMouseEventParams(TypedDict): class ImeSetCompositionParams (line 116) | class ImeSetCompositionParams(TypedDict): class InsertTextParams (line 126) | class InsertTextParams(TypedDict): class SetIgnoreInputEventsParams (line 132) | class SetIgnoreInputEventsParams(TypedDict): class SetInterceptDragsParams (line 138) | class SetInterceptDragsParams(TypedDict): class SynthesizePinchGestureParams (line 144) | class SynthesizePinchGestureParams(TypedDict): class SynthesizeScrollGestureParams (line 154) | class SynthesizeScrollGestureParams(TypedDict): class SynthesizeTapGestureParams (line 171) | class SynthesizeTapGestureParams(TypedDict): FILE: pydoll/protocol/input/types.py class GestureSourceType (line 8) | class GestureSourceType(str, Enum): class MouseButton (line 16) | class MouseButton(str, Enum): class DragEventType (line 27) | class DragEventType(str, Enum): class KeyEventType (line 36) | class KeyEventType(str, Enum): class MouseEventType (line 45) | class MouseEventType(str, Enum): class TouchEventType (line 54) | class TouchEventType(str, Enum): class KeyModifier (line 63) | class KeyModifier(int, Enum): class KeyLocation (line 70) | class KeyLocation(int, Enum): class PointerType (line 75) | class PointerType(str, Enum): class TouchPoint (line 82) | class TouchPoint(TypedDict): class DragDataItem (line 98) | class DragDataItem(TypedDict): class DragData (line 107) | class DragData(TypedDict): FILE: pydoll/protocol/network/events.py class NetworkEvent (line 42) | class NetworkEvent(str, Enum): class DataReceivedEventParams (line 559) | class DataReceivedEventParams(TypedDict): class EventSourceMessageReceivedEventParams (line 567) | class EventSourceMessageReceivedEventParams(TypedDict): class LoadingFailedEventParams (line 575) | class LoadingFailedEventParams(TypedDict): class LoadingFinishedEventParams (line 585) | class LoadingFinishedEventParams(TypedDict): class RequestInterceptedEventParams (line 591) | class RequestInterceptedEventParams(TypedDict): class RequestServedFromCacheEventParams (line 606) | class RequestServedFromCacheEventParams(TypedDict): class RequestWillBeSentEventParams (line 610) | class RequestWillBeSentEventParams(TypedDict): class ResourceChangedPriorityEventParams (line 625) | class ResourceChangedPriorityEventParams(TypedDict): class SignedExchangeReceivedEventParams (line 631) | class SignedExchangeReceivedEventParams(TypedDict): class ResponseReceivedEventParams (line 636) | class ResponseReceivedEventParams(TypedDict): class WebSocketClosedEventParams (line 646) | class WebSocketClosedEventParams(TypedDict): class WebSocketCreatedEventParams (line 651) | class WebSocketCreatedEventParams(TypedDict): class WebSocketFrameErrorEventParams (line 657) | class WebSocketFrameErrorEventParams(TypedDict): class WebSocketFrameReceivedEventParams (line 663) | class WebSocketFrameReceivedEventParams(TypedDict): class WebSocketFrameSentEventParams (line 669) | class WebSocketFrameSentEventParams(TypedDict): class WebSocketHandshakeResponseReceivedEventParams (line 675) | class WebSocketHandshakeResponseReceivedEventParams(TypedDict): class WebSocketWillSendHandshakeRequestEventParams (line 681) | class WebSocketWillSendHandshakeRequestEventParams(TypedDict): class WebTransportCreatedEventParams (line 688) | class WebTransportCreatedEventParams(TypedDict): class WebTransportConnectionEstablishedEventParams (line 695) | class WebTransportConnectionEstablishedEventParams(TypedDict): class WebTransportClosedEventParams (line 700) | class WebTransportClosedEventParams(TypedDict): class DirectTCPSocketCreatedEventParams (line 705) | class DirectTCPSocketCreatedEventParams(TypedDict): class DirectTCPSocketOpenedEventParams (line 714) | class DirectTCPSocketOpenedEventParams(TypedDict): class DirectTCPSocketAbortedEventParams (line 723) | class DirectTCPSocketAbortedEventParams(TypedDict): class DirectTCPSocketClosedEventParams (line 729) | class DirectTCPSocketClosedEventParams(TypedDict): class DirectTCPSocketChunkSentEventParams (line 734) | class DirectTCPSocketChunkSentEventParams(TypedDict): class DirectTCPSocketChunkReceivedEventParams (line 740) | class DirectTCPSocketChunkReceivedEventParams(TypedDict): class DirectUDPSocketCreatedEventParams (line 746) | class DirectUDPSocketCreatedEventParams(TypedDict): class DirectUDPSocketOpenedEventParams (line 753) | class DirectUDPSocketOpenedEventParams(TypedDict): class DirectUDPSocketAbortedEventParams (line 762) | class DirectUDPSocketAbortedEventParams(TypedDict): class DirectUDPSocketClosedEventParams (line 768) | class DirectUDPSocketClosedEventParams(TypedDict): class DirectUDPSocketChunkSentEventParams (line 773) | class DirectUDPSocketChunkSentEventParams(TypedDict): class DirectUDPSocketChunkReceivedEventParams (line 779) | class DirectUDPSocketChunkReceivedEventParams(TypedDict): class RequestWillBeSentExtraInfoEventParams (line 785) | class RequestWillBeSentExtraInfoEventParams(TypedDict): class ResponseReceivedExtraInfoEventParams (line 794) | class ResponseReceivedExtraInfoEventParams(TypedDict): class ResponseReceivedEarlyHintsEventParams (line 806) | class ResponseReceivedEarlyHintsEventParams(TypedDict): class TrustTokenOperationDoneEventParams (line 811) | class TrustTokenOperationDoneEventParams(TypedDict): class PolicyUpdatedEventParams (line 820) | class PolicyUpdatedEventParams(TypedDict): class SubresourceWebBundleMetadataReceivedEventParams (line 824) | class SubresourceWebBundleMetadataReceivedEventParams(TypedDict): class SubresourceWebBundleMetadataErrorEventParams (line 829) | class SubresourceWebBundleMetadataErrorEventParams(TypedDict): class SubresourceWebBundleInnerResponseParsedEventParams (line 834) | class SubresourceWebBundleInnerResponseParsedEventParams(TypedDict): class SubresourceWebBundleInnerResponseErrorEventParams (line 840) | class SubresourceWebBundleInnerResponseErrorEventParams(TypedDict): class ReportingApiReportAddedEventParams (line 847) | class ReportingApiReportAddedEventParams(TypedDict): class ReportingApiReportUpdatedEventParams (line 851) | class ReportingApiReportUpdatedEventParams(TypedDict): class ReportingApiEndpointsChangedForOriginEventParams (line 855) | class ReportingApiEndpointsChangedForOriginEventParams(TypedDict): FILE: pydoll/protocol/network/har_types.py class HarTimings (line 13) | class HarTimings(TypedDict): class HarCookie (line 25) | class HarCookie(TypedDict): class HarHeader (line 37) | class HarHeader(TypedDict): class HarQueryParam (line 44) | class HarQueryParam(TypedDict): class HarPostData (line 51) | class HarPostData(TypedDict): class HarRequest (line 59) | class HarRequest(TypedDict): class HarContent (line 73) | class HarContent(TypedDict): class HarResponse (line 82) | class HarResponse(TypedDict): class HarCache (line 96) | class HarCache(TypedDict, total=False): class HarEntry (line 103) | class HarEntry(TypedDict): class HarPage (line 117) | class HarPage(TypedDict): class HarCreator (line 125) | class HarCreator(TypedDict): class HarLog (line 132) | class HarLog(TypedDict): class Har (line 141) | class Har(TypedDict): FILE: pydoll/protocol/network/methods.py class NetworkMethod (line 22) | class NetworkMethod(str, Enum): class DeleteCookiesParams (line 56) | class DeleteCookiesParams(TypedDict): class EmulateNetworkConditionsParams (line 66) | class EmulateNetworkConditionsParams(TypedDict): class NetworkEnableParams (line 79) | class NetworkEnableParams(TypedDict): class GetCookiesParams (line 87) | class GetCookiesParams(TypedDict): class GetRequestPostDataParams (line 93) | class GetRequestPostDataParams(TypedDict): class GetResponseBodyParams (line 99) | class GetResponseBodyParams(TypedDict): class GetCertificateParams (line 105) | class GetCertificateParams(TypedDict): class GetResponseBodyForInterceptionParams (line 111) | class GetResponseBodyForInterceptionParams(TypedDict): class SearchInResponseBodyParams (line 117) | class SearchInResponseBodyParams(TypedDict): class SetBypassServiceWorkerParams (line 126) | class SetBypassServiceWorkerParams(TypedDict): class SetCacheDisabledParams (line 132) | class SetCacheDisabledParams(TypedDict): class SetCookieParams (line 138) | class SetCookieParams(TypedDict): class SetCookiesParams (line 157) | class SetCookiesParams(TypedDict): class SetExtraHTTPHeadersParams (line 163) | class SetExtraHTTPHeadersParams(TypedDict): class SetUserAgentOverrideParams (line 169) | class SetUserAgentOverrideParams(TypedDict): class SetBlockedURLsParams (line 178) | class SetBlockedURLsParams(TypedDict): class SetAcceptedEncodingsParams (line 184) | class SetAcceptedEncodingsParams(TypedDict): class SetAttachDebugStackParams (line 190) | class SetAttachDebugStackParams(TypedDict): class SetCookieControlsParams (line 196) | class SetCookieControlsParams(TypedDict): class StreamResourceContentParams (line 204) | class StreamResourceContentParams(TypedDict): class TakeResponseBodyForInterceptionAsStreamParams (line 210) | class TakeResponseBodyForInterceptionAsStreamParams(TypedDict): class SetRequestInterceptionParams (line 216) | class SetRequestInterceptionParams(TypedDict): class AuthChallengeResponseParams (line 222) | class AuthChallengeResponseParams(TypedDict): class EnableReportingApiParams (line 230) | class EnableReportingApiParams(TypedDict): class GetSecurityIsolationStatusParams (line 236) | class GetSecurityIsolationStatusParams(TypedDict): class LoadNetworkResourceParams (line 240) | class LoadNetworkResourceParams(TypedDict): class ReplayXHRParams (line 248) | class ReplayXHRParams(TypedDict): class GetCookiesResult (line 254) | class GetCookiesResult(TypedDict): class GetRequestPostDataResult (line 260) | class GetRequestPostDataResult(TypedDict): class GetResponseBodyResult (line 266) | class GetResponseBodyResult(TypedDict): class GetResponseBodyForInterceptionResult (line 273) | class GetResponseBodyForInterceptionResult(TypedDict): class GetCertificateResult (line 280) | class GetCertificateResult(TypedDict): class SearchInResponseBodyResult (line 286) | class SearchInResponseBodyResult(TypedDict): class SetCookieResult (line 292) | class SetCookieResult(TypedDict): class StreamResourceContentResult (line 298) | class StreamResourceContentResult(TypedDict): class TakeResponseBodyForInterceptionAsStreamResult (line 304) | class TakeResponseBodyForInterceptionAsStreamResult(TypedDict): class CanClearBrowserCacheResult (line 310) | class CanClearBrowserCacheResult(TypedDict): class CanClearBrowserCookiesResult (line 316) | class CanClearBrowserCookiesResult(TypedDict): class CanEmulateNetworkConditionsResult (line 322) | class CanEmulateNetworkConditionsResult(TypedDict): class GetSecurityIsolationStatusResult (line 328) | class GetSecurityIsolationStatusResult(TypedDict): class LoadNetworkResourceResult (line 334) | class LoadNetworkResourceResult(TypedDict): FILE: pydoll/protocol/network/types.py class ResourceType (line 9) | class ResourceType(str, Enum): class ErrorReason (line 38) | class ErrorReason(str, Enum): class RequestMethod (line 62) | class RequestMethod(str, Enum): class ConnectionType (line 72) | class ConnectionType(str, Enum): class CookieSameSite (line 86) | class CookieSameSite(str, Enum): class CookiePriority (line 94) | class CookiePriority(str, Enum): class CookieSourceScheme (line 102) | class CookieSourceScheme(str, Enum): class ResourceTiming (line 113) | class ResourceTiming(TypedDict): class ResourcePriority (line 139) | class ResourcePriority(str, Enum): class PostDataEntry (line 149) | class PostDataEntry(TypedDict): class Request (line 155) | class Request(TypedDict): class SignedCertificateTimestamp (line 173) | class SignedCertificateTimestamp(TypedDict): class SecurityDetails (line 186) | class SecurityDetails(TypedDict): class CertificateTransparencyCompliance (line 206) | class CertificateTransparencyCompliance(str, Enum): class BlockedReason (line 214) | class BlockedReason(str, Enum): class CorsError (line 243) | class CorsError(str, Enum): class CorsErrorStatus (line 283) | class CorsErrorStatus(TypedDict): class ServiceWorkerResponseSource (line 288) | class ServiceWorkerResponseSource(str, Enum): class TrustTokenParams (line 297) | class TrustTokenParams(TypedDict): class TrustTokenOperationType (line 309) | class TrustTokenOperationType(str, Enum): class AlternateProtocolUsage (line 315) | class AlternateProtocolUsage(str, Enum): class ServiceWorkerRouterSource (line 328) | class ServiceWorkerRouterSource(str, Enum): class ServiceWorkerRouterInfo (line 337) | class ServiceWorkerRouterInfo(TypedDict): class Response (line 343) | class Response(TypedDict): class WebSocketRequest (line 376) | class WebSocketRequest(TypedDict): class WebSocketResponse (line 382) | class WebSocketResponse(TypedDict): class WebSocketFrame (line 393) | class WebSocketFrame(TypedDict): class CachedResource (line 404) | class CachedResource(TypedDict): class Initiator (line 413) | class Initiator(TypedDict): class CookiePartitionKey (line 424) | class CookiePartitionKey(TypedDict): class Cookie (line 434) | class Cookie(TypedDict): class SetCookieBlockedReason (line 454) | class SetCookieBlockedReason(str, Enum): class CookieBlockedReason (line 481) | class CookieBlockedReason(str, Enum): class CookieExemptionReason (line 505) | class CookieExemptionReason(str, Enum): class BlockedSetCookieWithReason (line 523) | class BlockedSetCookieWithReason(TypedDict): class ExemptedSetCookieWithReason (line 531) | class ExemptedSetCookieWithReason(TypedDict): class AssociatedCookie (line 542) | class AssociatedCookie(TypedDict): class CookieParam (line 553) | class CookieParam(TypedDict): class AuthChallenge (line 572) | class AuthChallenge(TypedDict): class AuthChallengeResponse (line 581) | class AuthChallengeResponse(TypedDict): class InterceptionStage (line 589) | class InterceptionStage(str, Enum): class RequestPattern (line 599) | class RequestPattern(TypedDict): class SignedExchangeSignature (line 607) | class SignedExchangeSignature(TypedDict): class SignedExchangeHeader (line 621) | class SignedExchangeHeader(TypedDict): class SignedExchangeErrorField (line 631) | class SignedExchangeErrorField(str, Enum): class SignedExchangeError (line 642) | class SignedExchangeError(TypedDict): class SignedExchangeInfo (line 650) | class SignedExchangeInfo(TypedDict): class ContentEncoding (line 660) | class ContentEncoding(str, Enum): class DirectSocketDnsQueryType (line 669) | class DirectSocketDnsQueryType(str, Enum): class DirectTCPSocketOptions (line 674) | class DirectTCPSocketOptions(TypedDict): class DirectUDPSocketOptions (line 682) | class DirectUDPSocketOptions(TypedDict): class DirectUDPMessage (line 692) | class DirectUDPMessage(TypedDict): class PrivateNetworkRequestPolicy (line 698) | class PrivateNetworkRequestPolicy(str, Enum): class IPAddressSpace (line 706) | class IPAddressSpace(str, Enum): class ConnectTiming (line 713) | class ConnectTiming(TypedDict): class ClientSecurityState (line 717) | class ClientSecurityState(TypedDict): class CrossOriginOpenerPolicyValue (line 723) | class CrossOriginOpenerPolicyValue(str, Enum): class CrossOriginOpenerPolicyStatus (line 733) | class CrossOriginOpenerPolicyStatus(TypedDict): class CrossOriginEmbedderPolicyValue (line 740) | class CrossOriginEmbedderPolicyValue(str, Enum): class CrossOriginEmbedderPolicyStatus (line 746) | class CrossOriginEmbedderPolicyStatus(TypedDict): class ContentSecurityPolicySource (line 753) | class ContentSecurityPolicySource(str, Enum): class ContentSecurityPolicyStatus (line 758) | class ContentSecurityPolicyStatus(TypedDict): class SecurityIsolationStatus (line 764) | class SecurityIsolationStatus(TypedDict): class ReportStatus (line 770) | class ReportStatus(str, Enum): class ReportId (line 779) | class ReportId(str): class ReportingApiReport (line 783) | class ReportingApiReport(TypedDict): class ReportingApiEndpoint (line 797) | class ReportingApiEndpoint(TypedDict): class LoadNetworkResourcePageResult (line 802) | class LoadNetworkResourcePageResult(TypedDict): class LoadNetworkResourceOptions (line 813) | class LoadNetworkResourceOptions(TypedDict): FILE: pydoll/protocol/page/events.py class PageEvent (line 22) | class PageEvent(str, Enum): class DomContentEventFiredEventParams (line 280) | class DomContentEventFiredEventParams(TypedDict): class FileChooserOpenedEventParams (line 284) | class FileChooserOpenedEventParams(TypedDict): class FrameAttachedEventParams (line 290) | class FrameAttachedEventParams(TypedDict): class FrameClearedScheduledNavigationEventParams (line 296) | class FrameClearedScheduledNavigationEventParams(TypedDict): class FrameDetachedEventParams (line 300) | class FrameDetachedEventParams(TypedDict): class FrameSubtreeWillBeDetachedEventParams (line 305) | class FrameSubtreeWillBeDetachedEventParams(TypedDict): class FrameNavigatedEventParams (line 309) | class FrameNavigatedEventParams(TypedDict): class DocumentOpenedEventParams (line 314) | class DocumentOpenedEventParams(TypedDict): class FrameResizedEventParams (line 318) | class FrameResizedEventParams(TypedDict): class FrameStartedNavigatingEventParams (line 322) | class FrameStartedNavigatingEventParams(TypedDict): class FrameRequestedNavigationEventParams (line 329) | class FrameRequestedNavigationEventParams(TypedDict): class FrameScheduledNavigationEventParams (line 336) | class FrameScheduledNavigationEventParams(TypedDict): class FrameStartedLoadingEventParams (line 343) | class FrameStartedLoadingEventParams(TypedDict): class FrameStoppedLoadingEventParams (line 347) | class FrameStoppedLoadingEventParams(TypedDict): class DownloadWillBeginEventParams (line 351) | class DownloadWillBeginEventParams(TypedDict): class DownloadProgressEventParams (line 358) | class DownloadProgressEventParams(TypedDict): class InterstitialHiddenEventParams (line 365) | class InterstitialHiddenEventParams(TypedDict): class InterstitialShownEventParams (line 369) | class InterstitialShownEventParams(TypedDict): class JavascriptDialogClosedEventParams (line 373) | class JavascriptDialogClosedEventParams(TypedDict): class JavascriptDialogOpeningEventParams (line 379) | class JavascriptDialogOpeningEventParams(TypedDict): class LifecycleEventEventParams (line 388) | class LifecycleEventEventParams(TypedDict): class BackForwardCacheNotUsedEventParams (line 395) | class BackForwardCacheNotUsedEventParams(TypedDict): class LoadEventFiredEventParams (line 402) | class LoadEventFiredEventParams(TypedDict): class NavigatedWithinDocumentEventParams (line 406) | class NavigatedWithinDocumentEventParams(TypedDict): class ScreencastFrameEventParams (line 412) | class ScreencastFrameEventParams(TypedDict): class ScreencastVisibilityChangedEventParams (line 418) | class ScreencastVisibilityChangedEventParams(TypedDict): class WindowOpenEventParams (line 422) | class WindowOpenEventParams(TypedDict): class CompilationCacheProducedEventParams (line 429) | class CompilationCacheProducedEventParams(TypedDict): FILE: pydoll/protocol/page/methods.py class PageMethod (line 41) | class PageMethod(str, Enum): class AddScriptToEvaluateOnNewDocumentParams (line 95) | class AddScriptToEvaluateOnNewDocumentParams(TypedDict): class CaptureScreenshotParams (line 104) | class CaptureScreenshotParams(TypedDict, total=False): class CaptureSnapshotParams (line 115) | class CaptureSnapshotParams(TypedDict, total=False): class CreateIsolatedWorldParams (line 121) | class CreateIsolatedWorldParams(TypedDict): class GetAppManifestParams (line 129) | class GetAppManifestParams(TypedDict, total=False): class GetAdScriptAncestryParams (line 135) | class GetAdScriptAncestryParams(TypedDict): class GetPermissionsPolicyStateParams (line 141) | class GetPermissionsPolicyStateParams(TypedDict): class GetOriginTrialsParams (line 147) | class GetOriginTrialsParams(TypedDict): class GetResourceContentParams (line 153) | class GetResourceContentParams(TypedDict): class HandleJavaScriptDialogParams (line 160) | class HandleJavaScriptDialogParams(TypedDict): class NavigateParams (line 167) | class NavigateParams(TypedDict): class NavigateToHistoryEntryParams (line 177) | class NavigateToHistoryEntryParams(TypedDict): class EnableParams (line 183) | class EnableParams(TypedDict): class PrintToPDFParams (line 187) | class PrintToPDFParams(TypedDict, total=False): class ReloadParams (line 209) | class ReloadParams(TypedDict, total=False): class RemoveScriptToEvaluateOnNewDocumentParams (line 217) | class RemoveScriptToEvaluateOnNewDocumentParams(TypedDict): class ScreencastFrameAckParams (line 223) | class ScreencastFrameAckParams(TypedDict): class SearchInResourceParams (line 229) | class SearchInResourceParams(TypedDict): class SetAdBlockingEnabledParams (line 239) | class SetAdBlockingEnabledParams(TypedDict): class SetBypassCSPParams (line 245) | class SetBypassCSPParams(TypedDict): class AddScriptToEvaluateOnLoadParams (line 251) | class AddScriptToEvaluateOnLoadParams(TypedDict): class SetDocumentContentParams (line 257) | class SetDocumentContentParams(TypedDict): class SetInterceptFileChooserDialogParams (line 264) | class SetInterceptFileChooserDialogParams(TypedDict): class SetLifecycleEventsEnabledParams (line 271) | class SetLifecycleEventsEnabledParams(TypedDict): class AddCompilationCacheParams (line 277) | class AddCompilationCacheParams(TypedDict): class GenerateTestReportParams (line 284) | class GenerateTestReportParams(TypedDict): class GetAdScriptAncestryIdsParams (line 291) | class GetAdScriptAncestryIdsParams(TypedDict): class GetAppIdParams (line 297) | class GetAppIdParams(TypedDict, total=False): class GetManifestIconsParams (line 304) | class GetManifestIconsParams(TypedDict): class RemoveScriptToEvaluateOnLoadParams (line 310) | class RemoveScriptToEvaluateOnLoadParams(TypedDict): class SetFontFamiliesParams (line 316) | class SetFontFamiliesParams(TypedDict): class SetFontSizesParams (line 323) | class SetFontSizesParams(TypedDict): class SetPrerenderingAllowedParams (line 329) | class SetPrerenderingAllowedParams(TypedDict): class SetRPHRegistrationModeParams (line 335) | class SetRPHRegistrationModeParams(TypedDict): class SetSPCTransactionModeParams (line 341) | class SetSPCTransactionModeParams(TypedDict): class SetWebLifecycleStateParams (line 347) | class SetWebLifecycleStateParams(TypedDict): class StartScreencastParams (line 353) | class StartScreencastParams(TypedDict, total=False): class ProduceCompilationCacheParams (line 363) | class ProduceCompilationCacheParams(TypedDict): class AddScriptToEvaluateOnNewDocumentResult (line 369) | class AddScriptToEvaluateOnNewDocumentResult(TypedDict): class CaptureScreenshotResult (line 373) | class CaptureScreenshotResult(TypedDict): class CaptureSnapshotResult (line 377) | class CaptureSnapshotResult(TypedDict): class CreateIsolatedWorldResult (line 381) | class CreateIsolatedWorldResult(TypedDict): class GetAppManifestResult (line 385) | class GetAppManifestResult(TypedDict): class GetInstallabilityErrorsResult (line 393) | class GetInstallabilityErrorsResult(TypedDict): class GetAppIdResult (line 397) | class GetAppIdResult(TypedDict, total=False): class GetAdScriptAncestryResult (line 404) | class GetAdScriptAncestryResult(TypedDict, total=False): class GetFrameTreeResult (line 408) | class GetFrameTreeResult(TypedDict): class GetLayoutMetricsResult (line 412) | class GetLayoutMetricsResult(TypedDict): class GetNavigationHistoryResult (line 421) | class GetNavigationHistoryResult(TypedDict): class GetPermissionsPolicyStateResult (line 426) | class GetPermissionsPolicyStateResult(TypedDict): class GetOriginTrialsResult (line 430) | class GetOriginTrialsResult(TypedDict): class GetResourceContentResult (line 434) | class GetResourceContentResult(TypedDict): class GetResourceTreeResult (line 439) | class GetResourceTreeResult(TypedDict): class PrintToPDFResult (line 443) | class PrintToPDFResult(TypedDict): class SearchInResourceResult (line 448) | class SearchInResourceResult(TypedDict): class NavigateResult (line 452) | class NavigateResult(TypedDict): class AddScriptToEvaluateOnLoadResult (line 461) | class AddScriptToEvaluateOnLoadResult(TypedDict): class GetManifestIconsResult (line 467) | class GetManifestIconsResult(TypedDict): class GetAdScriptAncestryIdsResult (line 473) | class GetAdScriptAncestryIdsResult(TypedDict): FILE: pydoll/protocol/page/types.py class AdFrameType (line 12) | class AdFrameType(str, Enum): class AdFrameExplanation (line 20) | class AdFrameExplanation(str, Enum): class SecureContextType (line 28) | class SecureContextType(str, Enum): class CrossOriginIsolatedContextType (line 37) | class CrossOriginIsolatedContextType(str, Enum): class GatedAPIFeatures (line 45) | class GatedAPIFeatures(str, Enum): class PermissionsPolicyFeature (line 54) | class PermissionsPolicyFeature(str, Enum): class PermissionsPolicyBlockReason (line 165) | class PermissionsPolicyBlockReason(str, Enum): class BackForwardCacheNotRestoredReasonType (line 174) | class BackForwardCacheNotRestoredReasonType(str, Enum): class BackForwardCacheNotRestoredReason (line 182) | class BackForwardCacheNotRestoredReason(str, Enum): class BackForwardCacheBlockingDetails (line 342) | class BackForwardCacheBlockingDetails(TypedDict): class BackForwardCacheNotRestoredExplanation (line 349) | class BackForwardCacheNotRestoredExplanation(TypedDict): class BackForwardCacheNotRestoredExplanationTree (line 358) | class BackForwardCacheNotRestoredExplanationTree(TypedDict): class OriginTrialTokenStatus (line 364) | class OriginTrialTokenStatus(str, Enum): class OriginTrialStatus (line 381) | class OriginTrialStatus(str, Enum): class OriginTrialUsageRestriction (line 390) | class OriginTrialUsageRestriction(str, Enum): class TransitionType (line 397) | class TransitionType(str, Enum): class DialogType (line 415) | class DialogType(str, Enum): class ClientNavigationReason (line 424) | class ClientNavigationReason(Enum): class ClientNavigationDisposition (line 439) | class ClientNavigationDisposition(str, Enum): class ReferrerPolicy (line 448) | class ReferrerPolicy(str, Enum): class NavigationType (line 461) | class NavigationType(str, Enum): class AdFrameStatus (line 468) | class AdFrameStatus(TypedDict): class AdScriptId (line 475) | class AdScriptId(TypedDict): class AdScriptAncestry (line 482) | class AdScriptAncestry(TypedDict): class PermissionsPolicyBlockLocator (line 489) | class PermissionsPolicyBlockLocator(TypedDict): class PermissionsPolicyFeatureState (line 496) | class PermissionsPolicyFeatureState(TypedDict): class OriginTrialToken (line 504) | class OriginTrialToken(TypedDict): class OriginTrialTokenWithStatus (line 515) | class OriginTrialTokenWithStatus(TypedDict): class OriginTrial (line 523) | class OriginTrial(TypedDict): class SecurityOriginDetails (line 531) | class SecurityOriginDetails(TypedDict): class Frame (line 537) | class Frame(TypedDict): class FrameResource (line 557) | class FrameResource(TypedDict): class FrameResourceTree (line 569) | class FrameResourceTree(TypedDict): class FrameTree (line 577) | class FrameTree(TypedDict): class NavigationEntry (line 584) | class NavigationEntry(TypedDict): class ScreencastFrameMetadata (line 594) | class ScreencastFrameMetadata(TypedDict): class AppManifestError (line 606) | class AppManifestError(TypedDict): class AppManifestParsedProperties (line 615) | class AppManifestParsedProperties(TypedDict): class LayoutViewport (line 621) | class LayoutViewport(TypedDict): class VisualViewport (line 630) | class VisualViewport(TypedDict): class Viewport (line 643) | class Viewport(TypedDict): class FontFamilies (line 653) | class FontFamilies(TypedDict, total=False): class ScriptFontFamilies (line 665) | class ScriptFontFamilies(TypedDict): class FontSizes (line 672) | class FontSizes(TypedDict, total=False): class CompilationCacheParams (line 679) | class CompilationCacheParams(TypedDict): class FileFilter (line 686) | class FileFilter(TypedDict, total=False): class ImageResource (line 693) | class ImageResource(TypedDict): class FileHandler (line 701) | class FileHandler(TypedDict): class LaunchHandler (line 711) | class LaunchHandler(TypedDict): class ProtocolHandler (line 717) | class ProtocolHandler(TypedDict): class RelatedApplication (line 724) | class RelatedApplication(TypedDict): class ScopeExtension (line 731) | class ScopeExtension(TypedDict): class Screenshot (line 738) | class Screenshot(TypedDict): class ShareTarget (line 746) | class ShareTarget(TypedDict): class Shortcut (line 758) | class Shortcut(TypedDict): class WebAppManifest (line 765) | class WebAppManifest(TypedDict, total=False): class InstallabilityErrorArgument (line 793) | class InstallabilityErrorArgument(TypedDict): class InstallabilityError (line 800) | class InstallabilityError(TypedDict): class AutoResponseMode (line 807) | class AutoResponseMode(str, Enum): class WebLifecycleState (line 817) | class WebLifecycleState(str, Enum): class ScreenshotFormat (line 824) | class ScreenshotFormat(str, Enum): method has_value (line 832) | def has_value(cls, value: str) -> bool: method get_value (line 837) | def get_value(cls, value: str) -> 'ScreenshotFormat': class ScreencastFormat (line 842) | class ScreencastFormat(str, Enum): class TransferMode (line 849) | class TransferMode(str, Enum): FILE: pydoll/protocol/runtime/events.py class RuntimeEvent (line 17) | class RuntimeEvent(str, Enum): class ConsoleAPICallType (line 109) | class ConsoleAPICallType(str, Enum): class BindingCalledEventParams (line 132) | class BindingCalledEventParams(TypedDict): class ConsoleAPICalledEventParams (line 140) | class ConsoleAPICalledEventParams(TypedDict): class ExceptionRevokedEventParams (line 151) | class ExceptionRevokedEventParams(TypedDict): class ExceptionThrownEventParams (line 158) | class ExceptionThrownEventParams(TypedDict): class ExecutionContextCreatedEventParams (line 165) | class ExecutionContextCreatedEventParams(TypedDict): class ExecutionContextDestroyedEventParams (line 171) | class ExecutionContextDestroyedEventParams(TypedDict): class ExecutionContextsClearedEventParams (line 178) | class ExecutionContextsClearedEventParams(TypedDict): class InspectRequestedEventParams (line 184) | class InspectRequestedEventParams(TypedDict): FILE: pydoll/protocol/runtime/methods.py class RuntimeMethod (line 21) | class RuntimeMethod(str, Enum): class AddBindingParams (line 50) | class AddBindingParams(TypedDict): class AwaitPromiseParams (line 58) | class AwaitPromiseParams(TypedDict): class CallFunctionOnParams (line 66) | class CallFunctionOnParams(TypedDict): class CompileScriptParams (line 84) | class CompileScriptParams(TypedDict): class EvaluateParams (line 93) | class EvaluateParams(TypedDict): class GetExceptionDetailsParams (line 114) | class GetExceptionDetailsParams(TypedDict): class GetPropertiesParams (line 120) | class GetPropertiesParams(TypedDict): class GlobalLexicalScopeNamesParams (line 130) | class GlobalLexicalScopeNamesParams(TypedDict, total=False): class QueryObjectsParams (line 136) | class QueryObjectsParams(TypedDict): class ReleaseObjectParams (line 143) | class ReleaseObjectParams(TypedDict): class ReleaseObjectGroupParams (line 149) | class ReleaseObjectGroupParams(TypedDict): class RemoveBindingParams (line 155) | class RemoveBindingParams(TypedDict): class RunScriptParams (line 161) | class RunScriptParams(TypedDict): class SetAsyncCallStackDepthParams (line 174) | class SetAsyncCallStackDepthParams(TypedDict): class SetCustomObjectFormatterEnabledParams (line 180) | class SetCustomObjectFormatterEnabledParams(TypedDict): class SetMaxCallStackSizeToCaptureParams (line 186) | class SetMaxCallStackSizeToCaptureParams(TypedDict): class AwaitPromiseResult (line 193) | class AwaitPromiseResult(TypedDict): class CallFunctionOnResult (line 200) | class CallFunctionOnResult(TypedDict): class CompileScriptResult (line 207) | class CompileScriptResult(TypedDict, total=False): class EvaluateResult (line 214) | class EvaluateResult(TypedDict): class GetExceptionDetailsResult (line 221) | class GetExceptionDetailsResult(TypedDict, total=False): class GetHeapUsageResult (line 227) | class GetHeapUsageResult(TypedDict): class GetIsolateIdResult (line 236) | class GetIsolateIdResult(TypedDict): class GetPropertiesResult (line 242) | class GetPropertiesResult(TypedDict): class GlobalLexicalScopeNamesResult (line 251) | class GlobalLexicalScopeNamesResult(TypedDict): class QueryObjectsResult (line 257) | class QueryObjectsResult(TypedDict): class RunScriptResult (line 263) | class RunScriptResult(TypedDict): FILE: pydoll/protocol/runtime/types.py class SerializationType (line 15) | class SerializationType(str, Enum): class DeepSerializedValueType (line 23) | class DeepSerializedValueType(str, Enum): class RemoteObjectType (line 52) | class RemoteObjectType(str, Enum): class RemoteObjectSubtype (line 65) | class RemoteObjectSubtype(str, Enum): class ObjectPreviewType (line 89) | class ObjectPreviewType(str, Enum): class ObjectPreviewSubtype (line 102) | class ObjectPreviewSubtype(str, Enum): class PropertyPreviewType (line 126) | class PropertyPreviewType(str, Enum): class PropertyPreviewSubtype (line 140) | class PropertyPreviewSubtype(str, Enum): class SerializationOptions (line 164) | class SerializationOptions(TypedDict): class DeepSerializedValue (line 172) | class DeepSerializedValue(TypedDict): class CustomPreview (line 181) | class CustomPreview(TypedDict): class PropertyPreview (line 188) | class PropertyPreview(TypedDict): class EntryPreview (line 198) | class EntryPreview(TypedDict): class ObjectPreview (line 205) | class ObjectPreview(TypedDict): class RemoteObject (line 216) | class RemoteObject(TypedDict): class PropertyDescriptor (line 231) | class PropertyDescriptor(TypedDict): class InternalPropertyDescriptor (line 246) | class InternalPropertyDescriptor(TypedDict): class PrivatePropertyDescriptor (line 253) | class PrivatePropertyDescriptor(TypedDict): class CallArgument (line 262) | class CallArgument(TypedDict, total=False): class ExecutionContextDescription (line 270) | class ExecutionContextDescription(TypedDict): class ExceptionDetails (line 280) | class ExceptionDetails(TypedDict): class CallFrame (line 295) | class CallFrame(TypedDict): class StackTraceId (line 305) | class StackTraceId(TypedDict): class StackTrace (line 312) | class StackTrace(TypedDict): FILE: pydoll/protocol/security/types.py class MixedContentType (line 4) | class MixedContentType(str, Enum): class SecurityState (line 14) | class SecurityState(str, Enum): FILE: pydoll/protocol/storage/events.py class StorageEvent (line 28) | class StorageEvent(str, Enum): class CacheStorageContentUpdatedEventParams (line 227) | class CacheStorageContentUpdatedEventParams(TypedDict): class CacheStorageListUpdatedEventParams (line 234) | class CacheStorageListUpdatedEventParams(TypedDict): class IndexedDBContentUpdatedEventParams (line 240) | class IndexedDBContentUpdatedEventParams(TypedDict): class IndexedDBListUpdatedEventParams (line 248) | class IndexedDBListUpdatedEventParams(TypedDict): class InterestGroupAccessedEventParams (line 254) | class InterestGroupAccessedEventParams(TypedDict): class InterestGroupAuctionEventOccurredEventParams (line 265) | class InterestGroupAuctionEventOccurredEventParams(TypedDict): class InterestGroupAuctionNetworkRequestCreatedEventParams (line 273) | class InterestGroupAuctionNetworkRequestCreatedEventParams(TypedDict): class SharedStorageAccessedEventParams (line 279) | class SharedStorageAccessedEventParams(TypedDict): class SharedStorageWorkletOperationExecutionFinishedEventParams (line 289) | class SharedStorageWorkletOperationExecutionFinishedEventParams(TypedDict): class StorageBucketCreatedOrUpdatedEventParams (line 299) | class StorageBucketCreatedOrUpdatedEventParams(TypedDict): class StorageBucketDeletedEventParams (line 303) | class StorageBucketDeletedEventParams(TypedDict): class AttributionReportingSourceRegisteredEventParams (line 307) | class AttributionReportingSourceRegisteredEventParams(TypedDict): class AttributionReportingTriggerRegisteredEventParams (line 312) | class AttributionReportingTriggerRegisteredEventParams(TypedDict): class AttributionReportingReportSentEventParams (line 318) | class AttributionReportingReportSentEventParams(TypedDict): class AttributionReportingVerboseDebugReportSentEventParams (line 327) | class AttributionReportingVerboseDebugReportSentEventParams(TypedDict): FILE: pydoll/protocol/storage/methods.py class StorageMethod (line 20) | class StorageMethod(str, Enum): class GetStorageKeyForFrameParams (line 62) | class GetStorageKeyForFrameParams(TypedDict): class GetStorageKeyForFrameResult (line 66) | class GetStorageKeyForFrameResult(TypedDict): class ClearDataForOriginParams (line 70) | class ClearDataForOriginParams(TypedDict): class ClearDataForStorageKeyParams (line 75) | class ClearDataForStorageKeyParams(TypedDict): class GetCookiesParams (line 80) | class GetCookiesParams(TypedDict): class GetCookiesResult (line 84) | class GetCookiesResult(TypedDict): class SetCookiesParams (line 88) | class SetCookiesParams(TypedDict): class ClearCookiesParams (line 93) | class ClearCookiesParams(TypedDict): class GetUsageAndQuotaParams (line 97) | class GetUsageAndQuotaParams(TypedDict): class GetUsageAndQuotaResult (line 101) | class GetUsageAndQuotaResult(TypedDict): class OverrideQuotaForOriginParams (line 108) | class OverrideQuotaForOriginParams(TypedDict): class TrackCacheStorageForOriginParams (line 113) | class TrackCacheStorageForOriginParams(TypedDict): class TrackCacheStorageForStorageKeyParams (line 117) | class TrackCacheStorageForStorageKeyParams(TypedDict): class TrackIndexedDBForOriginParams (line 121) | class TrackIndexedDBForOriginParams(TypedDict): class TrackIndexedDBForStorageKeyParams (line 125) | class TrackIndexedDBForStorageKeyParams(TypedDict): class UntrackCacheStorageForOriginParams (line 129) | class UntrackCacheStorageForOriginParams(TypedDict): class UntrackCacheStorageForStorageKeyParams (line 133) | class UntrackCacheStorageForStorageKeyParams(TypedDict): class UntrackIndexedDBForOriginParams (line 137) | class UntrackIndexedDBForOriginParams(TypedDict): class UntrackIndexedDBForStorageKeyParams (line 141) | class UntrackIndexedDBForStorageKeyParams(TypedDict): class GetTrustTokensResult (line 145) | class GetTrustTokensResult(TypedDict): class ClearTrustTokensParams (line 149) | class ClearTrustTokensParams(TypedDict): class ClearTrustTokensResult (line 153) | class ClearTrustTokensResult(TypedDict): class GetInterestGroupDetailsParams (line 157) | class GetInterestGroupDetailsParams(TypedDict): class GetInterestGroupDetailsResult (line 162) | class GetInterestGroupDetailsResult(TypedDict): class SetInterestGroupTrackingParams (line 166) | class SetInterestGroupTrackingParams(TypedDict): class SetInterestGroupAuctionTrackingParams (line 170) | class SetInterestGroupAuctionTrackingParams(TypedDict): class GetSharedStorageMetadataParams (line 174) | class GetSharedStorageMetadataParams(TypedDict): class GetSharedStorageMetadataResult (line 178) | class GetSharedStorageMetadataResult(TypedDict): class GetSharedStorageEntriesParams (line 182) | class GetSharedStorageEntriesParams(TypedDict): class GetSharedStorageEntriesResult (line 186) | class GetSharedStorageEntriesResult(TypedDict): class SetSharedStorageEntryParams (line 190) | class SetSharedStorageEntryParams(TypedDict): class DeleteSharedStorageEntryParams (line 197) | class DeleteSharedStorageEntryParams(TypedDict): class ClearSharedStorageEntriesParams (line 202) | class ClearSharedStorageEntriesParams(TypedDict): class ResetSharedStorageBudgetParams (line 206) | class ResetSharedStorageBudgetParams(TypedDict): class SetSharedStorageTrackingParams (line 210) | class SetSharedStorageTrackingParams(TypedDict): class SetStorageBucketTrackingParams (line 214) | class SetStorageBucketTrackingParams(TypedDict): class DeleteStorageBucketParams (line 219) | class DeleteStorageBucketParams(TypedDict): class RunBounceTrackingMitigationsResult (line 223) | class RunBounceTrackingMitigationsResult(TypedDict): class SetAttributionReportingLocalTestingModeParams (line 227) | class SetAttributionReportingLocalTestingModeParams(TypedDict): class SetAttributionReportingTrackingParams (line 231) | class SetAttributionReportingTrackingParams(TypedDict): class SendPendingAttributionReportsResult (line 235) | class SendPendingAttributionReportsResult(TypedDict): class GetRelatedWebsiteSetsResult (line 239) | class GetRelatedWebsiteSetsResult(TypedDict): class GetAffectedUrlsForThirdPartyCookieMetadataParams (line 243) | class GetAffectedUrlsForThirdPartyCookieMetadataParams(TypedDict): class GetAffectedUrlsForThirdPartyCookieMetadataResult (line 248) | class GetAffectedUrlsForThirdPartyCookieMetadataResult(TypedDict): class SetProtectedAudienceKAnonymityParams (line 252) | class SetProtectedAudienceKAnonymityParams(TypedDict): FILE: pydoll/protocol/storage/types.py class StorageType (line 12) | class StorageType(str, Enum): class UsageForType (line 28) | class UsageForType(TypedDict): class TrustTokens (line 35) | class TrustTokens(TypedDict): class InterestGroupAccessType (line 43) | class InterestGroupAccessType(str, Enum): class InterestGroupAuctionEventType (line 59) | class InterestGroupAuctionEventType(str, Enum): class InterestGroupAuctionFetchType (line 66) | class InterestGroupAuctionFetchType(str, Enum): class SharedStorageAccessScope (line 76) | class SharedStorageAccessScope(str, Enum): class SharedStorageAccessMethod (line 85) | class SharedStorageAccessMethod(str, Enum): class SharedStorageEntry (line 105) | class SharedStorageEntry(TypedDict): class SharedStorageMetadata (line 112) | class SharedStorageMetadata(TypedDict): class SharedStoragePrivateAggregationConfig (line 121) | class SharedStoragePrivateAggregationConfig(TypedDict): class SharedStorageReportingMetadata (line 131) | class SharedStorageReportingMetadata(TypedDict): class SharedStorageUrlWithMetadata (line 138) | class SharedStorageUrlWithMetadata(TypedDict): class SharedStorageAccessParams (line 145) | class SharedStorageAccessParams(TypedDict, total=False): class StorageBucketsDurability (line 168) | class StorageBucketsDurability(str, Enum): class StorageBucket (line 173) | class StorageBucket(TypedDict): class StorageBucketInfo (line 178) | class StorageBucketInfo(TypedDict): class AttributionReportingSourceType (line 187) | class AttributionReportingSourceType(str, Enum): class AttributionReportingFilterDataEntry (line 197) | class AttributionReportingFilterDataEntry(TypedDict): class AttributionReportingFilterConfig (line 202) | class AttributionReportingFilterConfig(TypedDict): class AttributionReportingFilterPair (line 207) | class AttributionReportingFilterPair(TypedDict): class AttributionReportingAggregationKeysEntry (line 212) | class AttributionReportingAggregationKeysEntry(TypedDict): class AttributionReportingEventReportWindows (line 217) | class AttributionReportingEventReportWindows(TypedDict): class AttributionReportingTriggerDataMatching (line 222) | class AttributionReportingTriggerDataMatching(str, Enum): class AttributionReportingAggregatableDebugReportingData (line 227) | class AttributionReportingAggregatableDebugReportingData(TypedDict): class AttributionReportingAggregatableDebugReportingConfig (line 233) | class AttributionReportingAggregatableDebugReportingConfig(TypedDict): class AttributionScopesData (line 240) | class AttributionScopesData(TypedDict): class AttributionReportingNamedBudgetDef (line 246) | class AttributionReportingNamedBudgetDef(TypedDict): class AttributionReportingSourceRegistration (line 251) | class AttributionReportingSourceRegistration(TypedDict): class AttributionReportingSourceRegistrationResult (line 276) | class AttributionReportingSourceRegistrationResult(str, Enum): class AttributionReportingSourceRegistrationTimeConfig (line 295) | class AttributionReportingSourceRegistrationTimeConfig(str, Enum): class AttributionReportingAggregatableValueDictEntry (line 300) | class AttributionReportingAggregatableValueDictEntry(TypedDict): class AttributionReportingAggregatableValueEntry (line 306) | class AttributionReportingAggregatableValueEntry(TypedDict): class AttributionReportingEventTriggerData (line 311) | class AttributionReportingEventTriggerData(TypedDict): class AttributionReportingAggregatableTriggerData (line 318) | class AttributionReportingAggregatableTriggerData(TypedDict): class AttributionReportingAggregatableDedupKey (line 324) | class AttributionReportingAggregatableDedupKey(TypedDict): class AttributionReportingNamedBudgetCandidate (line 329) | class AttributionReportingNamedBudgetCandidate(TypedDict): class AttributionReportingTriggerRegistration (line 334) | class AttributionReportingTriggerRegistration(TypedDict): class AttributionReportingEventLevelResult (line 351) | class AttributionReportingEventLevelResult(str, Enum): class AttributionReportingAggregatableResult (line 373) | class AttributionReportingAggregatableResult(str, Enum): class AttributionReportingReportResult (line 391) | class AttributionReportingReportResult(str, Enum): class RelatedWebsiteSet (line 398) | class RelatedWebsiteSet(TypedDict): FILE: pydoll/protocol/target/events.py class TargetEvent (line 9) | class TargetEvent(str, Enum): class AttachedToTargetParams (line 85) | class AttachedToTargetParams(TypedDict): class DetachedFromTargetParams (line 93) | class DetachedFromTargetParams(TypedDict): class ReceivedMessageFromTargetParams (line 100) | class ReceivedMessageFromTargetParams(TypedDict): class TargetCreatedParams (line 108) | class TargetCreatedParams(TypedDict): class TargetDestroyedParams (line 114) | class TargetDestroyedParams(TypedDict): class TargetCrashedParams (line 120) | class TargetCrashedParams(TypedDict): class TargetInfoChangedParams (line 128) | class TargetInfoChangedParams(TypedDict): FILE: pydoll/protocol/target/methods.py class TargetMethod (line 16) | class TargetMethod(str, Enum): class ActivateTargetParams (line 40) | class ActivateTargetParams(TypedDict): class AttachToTargetParams (line 46) | class AttachToTargetParams(TypedDict): class AttachToBrowserTargetParams (line 53) | class AttachToBrowserTargetParams(TypedDict): class CloseTargetParams (line 59) | class CloseTargetParams(TypedDict): class ExposeDevToolsProtocolParams (line 65) | class ExposeDevToolsProtocolParams(TypedDict): class CreateBrowserContextParams (line 73) | class CreateBrowserContextParams(TypedDict): class CreateTargetParams (line 82) | class CreateTargetParams(TypedDict): class DetachFromTargetParams (line 99) | class DetachFromTargetParams(TypedDict): class DisposeBrowserContextParams (line 106) | class DisposeBrowserContextParams(TypedDict): class GetTargetInfoParams (line 112) | class GetTargetInfoParams(TypedDict): class GetTargetsParams (line 118) | class GetTargetsParams(TypedDict): class SendMessageToTargetParams (line 124) | class SendMessageToTargetParams(TypedDict): class SetAutoAttachParams (line 132) | class SetAutoAttachParams(TypedDict): class AutoAttachRelatedParams (line 141) | class AutoAttachRelatedParams(TypedDict): class SetDiscoverTargetsParams (line 149) | class SetDiscoverTargetsParams(TypedDict): class SetRemoteLocationsParams (line 156) | class SetRemoteLocationsParams(TypedDict): class OpenDevToolsParams (line 162) | class OpenDevToolsParams(TypedDict): class AttachToTargetResult (line 169) | class AttachToTargetResult(TypedDict): class AttachToBrowserTargetResult (line 175) | class AttachToBrowserTargetResult(TypedDict): class CloseTargetResult (line 181) | class CloseTargetResult(TypedDict): class CreateBrowserContextResult (line 187) | class CreateBrowserContextResult(TypedDict): class GetBrowserContextsResult (line 193) | class GetBrowserContextsResult(TypedDict): class CreateTargetResult (line 199) | class CreateTargetResult(TypedDict): class GetTargetInfoResult (line 205) | class GetTargetInfoResult(TypedDict): class GetTargetsResult (line 211) | class GetTargetsResult(TypedDict): class OpenDevToolsResult (line 217) | class OpenDevToolsResult(TypedDict): FILE: pydoll/protocol/target/types.py class TargetInfo (line 10) | class TargetInfo(TypedDict): class FilterEntry (line 23) | class FilterEntry(TypedDict, total=False): class RemoteLocation (line 33) | class RemoteLocation(TypedDict): FILE: pydoll/utils/bundle.py function filter_fetchable_resources (line 56) | def filter_fetchable_resources( function collect_frame_resources (line 74) | def collect_frame_resources( function build_asset_filename (line 87) | def build_asset_filename(url: str, mime_type: str, index: int) -> str: function rewrite_css_urls (line 99) | def rewrite_css_urls( function inline_css_urls (line 120) | def inline_css_urls( function replace_stylesheet_with_inline (line 142) | def replace_stylesheet_with_inline(html: str, url: str, css_text: str) -... function replace_script_with_inline (line 153) | def replace_script_with_inline(html: str, url: str, js_text: str) -> str: function rewrite_html_urls (line 165) | def rewrite_html_urls( function inline_all_assets (line 179) | def inline_all_assets( FILE: pydoll/utils/general.py class TextExtractor (line 15) | class TextExtractor(HTMLParser): method __init__ (line 23) | def __init__(self): method handle_starttag (line 29) | def handle_starttag(self, tag, attrs): method handle_endtag (line 40) | def handle_endtag(self, tag): method handle_data (line 50) | def handle_data(self, data): method get_strings (line 60) | def get_strings(self, strip: bool): method get_text (line 73) | def get_text(self, separator: str, strip: bool) -> str: function extract_text_from_html (line 87) | def extract_text_from_html(html: str, separator: str = '', strip: bool =... function decode_base64_to_bytes (line 104) | def decode_base64_to_bytes(image: str) -> bytes: function get_browser_ws_address (line 117) | async def get_browser_ws_address(port: int) -> str: function validate_browser_paths (line 143) | def validate_browser_paths(paths: list[str]) -> str: function clean_script_for_analysis (line 167) | def clean_script_for_analysis(script: str) -> str: function is_script_already_function (line 193) | def is_script_already_function(script: str) -> bool: function has_return_outside_function (line 214) | def has_return_outside_function(script: str) -> bool: function normalize_synthetic_xpath (line 260) | def normalize_synthetic_xpath(selector: str) -> str: FILE: pydoll/utils/socks5_proxy_forwarder.py class _suppress_closed (line 90) | class _suppress_closed: method __enter__ (line 93) | def __enter__(self) -> None: method __exit__ (line 96) | def __exit__( function _close_writer (line 105) | async def _close_writer(writer: asyncio.StreamWriter) -> None: function _pipe (line 112) | async def _pipe( class SOCKS5Forwarder (line 131) | class SOCKS5Forwarder: method __init__ (line 142) | def __init__( method __aenter__ (line 163) | async def __aenter__(self) -> SOCKS5Forwarder: method __aexit__ (line 167) | async def __aexit__( method start (line 175) | async def start(self) -> None: method stop (line 216) | async def stop(self) -> None: method serve_forever (line 224) | async def serve_forever(self) -> None: method _handle_client (line 231) | async def _handle_client( method _accept_local_handshake (line 286) | async def _accept_local_handshake( method _remote_handshake (line 334) | async def _remote_handshake( method _read_raw_address (line 411) | async def _read_raw_address( method _send_reply (line 435) | async def _send_reply( class _HandshakeError (line 457) | class _HandshakeError(Exception): method __init__ (line 460) | def __init__( function _read_exact (line 471) | async def _read_exact(reader: asyncio.StreamReader, n: int, *, peer: str... function _skip_bnd_address (line 486) | async def _skip_bnd_address(reader: asyncio.StreamReader, atyp: int, *, ... function _main (line 497) | async def _main(args: argparse.Namespace) -> None: function _test_negotiate_auth (line 532) | async def _test_negotiate_auth( function _test_connect_and_verify (line 574) | async def _test_connect_and_verify( function _test_proxy (line 622) | async def _test_proxy(args: argparse.Namespace) -> None: function cli (line 656) | def cli() -> None: FILE: pydoll/utils/user_agent_parser.py class ParsedUserAgent (line 89) | class ParsedUserAgent: class UserAgentParser (line 99) | class UserAgentParser: method parse (line 112) | def parse(user_agent: str) -> ParsedUserAgent: method _build_metadata (line 140) | def _build_metadata( method _detect_os_key (line 161) | def _detect_os_key(user_agent: str) -> str: method _detect_browser (line 169) | def _detect_browser(user_agent: str) -> tuple[str, str, str]: method _detect_mobile (line 185) | def _detect_mobile(user_agent: str) -> bool: method _build_app_version (line 190) | def _build_app_version(user_agent: str) -> str: method _get_platform_version (line 196) | def _get_platform_version(user_agent: str, os_key: str) -> str: method _parse_windows_version (line 213) | def _parse_windows_version(user_agent: str, default: str) -> str: method _parse_dotted_version (line 220) | def _parse_dotted_version(user_agent: str, pattern: str, default: str)... method _build_grease (line 230) | def _build_grease(major_int: int) -> tuple[str, str, str]: method _build_brands (line 241) | def _build_brands(browser_name: str, major_version: str) -> list[UserA... method _build_full_version_list (line 256) | def _build_full_version_list( method _extract_model (line 274) | def _extract_model(user_agent: str) -> str: method _build_navigator_override_js (line 281) | def _build_navigator_override_js(vendor: str, app_version: str) -> str: FILE: tests/conftest.py function ci_chrome_options (line 9) | def ci_chrome_options(): FILE: tests/test_browser/test_browser_base.py class ConcreteBrowser (line 36) | class ConcreteBrowser(Browser): method _get_default_binary_location (line 37) | def _get_default_binary_location(self) -> str: function mock_browser (line 42) | async def mock_browser(): function test_browser_initialization (line 83) | async def test_browser_initialization(mock_browser): function test_start_browser_success (line 93) | async def test_start_browser_success(mock_browser): function test_start_browser_failure (line 112) | async def test_start_browser_failure(mock_browser): function test_start_browser_failure_with_start_timeout (line 121) | async def test_start_browser_failure_with_start_timeout(mock_browser): function test_start_browser_success_with_start_timeout (line 148) | async def test_start_browser_success_with_start_timeout(mock_browser): function test_proxy_configuration (line 174) | async def test_proxy_configuration(mock_browser): function test_new_tab (line 195) | async def test_new_tab(mock_browser): function test_connect_with_ws_address_returns_tab_and_sets_handler_ws (line 205) | async def test_connect_with_ws_address_returns_tab_and_sets_handler_ws(m... function test_connect_with_ws_address_preserves_token_in_tab_ws (line 223) | async def test_connect_with_ws_address_preserves_token_in_tab_ws(mock_br... function test_new_tab_uses_ws_base_when_ws_address_present (line 241) | async def test_new_tab_uses_ws_base_when_ws_address_present(mock_browser): function test_get_window_id_for_tab_uses_ws_target_when_no_target_id (line 257) | async def test_get_window_id_for_tab_uses_ws_target_when_no_target_id(mo... function test_cookie_management (line 272) | async def test_cookie_management(mock_browser): function test_event_registration (line 290) | async def test_event_registration(mock_browser): function test_remove_callback_success (line 301) | async def test_remove_callback_success(mock_browser): function test_remove_callback_false (line 312) | async def test_remove_callback_false(mock_browser): function test_window_management (line 323) | async def test_window_management(mock_browser): function test_get_window_id_for_target (line 347) | async def test_get_window_id_for_target(mock_browser): function test_get_window_id_for_tab_raises_when_no_target_id_and_no_ws (line 363) | async def test_get_window_id_for_tab_raises_when_no_target_id_and_no_ws(... function test__validate_ws_address_raises_on_invalid_scheme (line 370) | def test__validate_ws_address_raises_on_invalid_scheme(): function test__validate_ws_address_accepts_ws_scheme (line 375) | def test__validate_ws_address_accepts_ws_scheme(): function test__validate_ws_address_accepts_wss_scheme (line 379) | def test__validate_ws_address_accepts_wss_scheme(): function test__validate_ws_address_raises_on_insufficient_slashes (line 383) | def test__validate_ws_address_raises_on_insufficient_slashes(): function test__validate_ws_address_raises_on_insufficient_slashes_wss (line 388) | def test__validate_ws_address_raises_on_insufficient_slashes_wss(): function test__get_tab_ws_address_raises_when_ws_not_set (line 393) | def test__get_tab_ws_address_raises_when_ws_not_set(mock_browser): function test__get_tab_ws_address_preserves_query_and_fragment (line 399) | def test__get_tab_ws_address_preserves_query_and_fragment(mock_browser): function test__get_tab_ws_address_preserves_wss_scheme (line 405) | def test__get_tab_ws_address_preserves_wss_scheme(mock_browser): function test_get_window_id (line 412) | async def test_get_window_id(mock_browser): function test_stop_browser (line 425) | async def test_stop_browser(mock_browser): function test_stop_browser_not_running (line 435) | async def test_stop_browser_not_running(mock_browser): function test_context_manager (line 444) | async def test_context_manager(mock_browser): function test_enable_events (line 453) | async def test_enable_events(mock_browser): function test_disable_events (line 461) | async def test_disable_events(mock_browser): function test__continue_request_callback (line 467) | async def test__continue_request_callback(mock_browser): function test__continue_request_auth_required_callback (line 475) | async def test__continue_request_auth_required_callback(mock_browser): function test__is_valid_tab (line 490) | def test__is_valid_tab(mock_browser): function test__is_valid_tab_not_a_tab (line 500) | def test__is_valid_tab_not_a_tab(mock_browser): function test__get_default_binary_location (line 531) | def test__get_default_binary_location( function test__get_default_binary_location_unsupported_os (line 546) | def test__get_default_binary_location_unsupported_os(): function test__get_default_binary_location_throws_exception_if_os_not_supported (line 553) | def test__get_default_binary_location_throws_exception_if_os_not_supported( function test_create_browser_context (line 563) | async def test_create_browser_context(mock_browser): function test_create_browser_context_with_private_proxy_sanitizes_and_stores_auth (line 586) | async def test_create_browser_context_with_private_proxy_sanitizes_and_s... function test_create_browser_context_with_private_proxy_no_scheme_sanitizes_and_stores_auth (line 607) | async def test_create_browser_context_with_private_proxy_no_scheme_sanit... function test__sanitize_proxy_and_extract_auth_variants (line 636) | def test__sanitize_proxy_and_extract_auth_variants(input_proxy, expected... function test_new_tab_sets_up_context_proxy_auth_handlers (line 644) | async def test_new_tab_sets_up_context_proxy_auth_handlers(MockTab, mock... function test_new_tab_without_context_proxy_auth_does_not_setup_handlers (line 691) | async def test_new_tab_without_context_proxy_auth_does_not_setup_handler... function test_delete_browser_context (line 712) | async def test_delete_browser_context(mock_browser): function test_get_browser_contexts (line 721) | async def test_get_browser_contexts(mock_browser): function test_set_download_behavior (line 733) | async def test_set_download_behavior(mock_browser): function test_set_download_path (line 750) | async def test_set_download_path(mock_browser): function test_grant_permissions (line 763) | async def test_grant_permissions(mock_browser): function test_reset_permissions (line 777) | async def test_reset_permissions(mock_browser): function test_get_version (line 786) | async def test_get_version(mock_browser): function test_headless_mode (line 807) | async def test_headless_mode(mock_browser): function test_multiple_tab_handling (line 818) | async def test_multiple_tab_handling(mock_browser): function test_get_valid_tab_id_success (line 838) | async def test_get_valid_tab_id_success(): function test_get_valid_tab_id_no_valid_tabs (line 851) | async def test_get_valid_tab_id_no_valid_tabs(): function test_get_valid_tab_id_empty_targets (line 863) | async def test_get_valid_tab_id_empty_targets(): function test_get_valid_tab_id_missing_target_id (line 872) | async def test_get_valid_tab_id_missing_target_id(): function test_get_valid_tab_id_filters_extensions (line 884) | async def test_get_valid_tab_id_filters_extensions(): function test_enable_runtime_events (line 897) | async def test_enable_runtime_events(mock_browser): function test_disable_runtime_events (line 905) | async def test_disable_runtime_events(mock_browser): function test_get_tab_by_target (line 913) | async def test_get_tab_by_target(mock_browser): function test_continue_request (line 929) | async def test_continue_request(mock_browser): function test_continue_request_with_all_params (line 949) | async def test_continue_request_with_all_params(mock_browser): function test_fail_request (line 981) | async def test_fail_request(mock_browser): function test_fulfill_request (line 993) | async def test_fulfill_request(mock_browser): function test_fulfill_request_with_all_params (line 1013) | async def test_fulfill_request_with_all_params(mock_browser): function test_event_registration_with_async_callback (line 1044) | async def test_event_registration_with_async_callback(mock_browser): function test_event_registration_sync_callback (line 1068) | async def test_event_registration_sync_callback(mock_browser): function test_get_opened_tabs_success (line 1086) | async def test_get_opened_tabs_success(mock_browser): function test_get_opened_tabs_no_valid_tabs (line 1128) | async def test_get_opened_tabs_no_valid_tabs(mock_browser): function test_get_opened_tabs_empty_targets (line 1164) | async def test_get_opened_tabs_empty_targets(mock_browser): function test_get_opened_tabs_filters_extensions (line 1177) | async def test_get_opened_tabs_filters_extensions(mock_browser): function test_get_opened_tabs_filters_non_page_types (line 1214) | async def test_get_opened_tabs_filters_non_page_types(mock_browser): function test_get_opened_tabs_order_is_reversed (line 1252) | async def test_get_opened_tabs_order_is_reversed(mock_browser): function test_get_opened_tabs_with_mixed_valid_invalid_targets (line 1287) | async def test_get_opened_tabs_with_mixed_valid_invalid_targets(mock_bro... function test_get_opened_tabs_integration_with_new_tab (line 1341) | async def test_get_opened_tabs_integration_with_new_tab(mock_browser): function test_headless_parameter_deprecation_warning (line 1381) | async def test_headless_parameter_deprecation_warning(mock_browser): function test_get_user_agent_from_options_found (line 1399) | async def test_get_user_agent_from_options_found(mock_browser): function test_get_user_agent_from_options_not_found (line 1408) | async def test_get_user_agent_from_options_not_found(mock_browser): function test_apply_user_agent_override_no_ua_set (line 1414) | async def test_apply_user_agent_override_no_ua_set(mock_browser): function test_apply_user_agent_override_with_ua_set (line 1424) | async def test_apply_user_agent_override_with_ua_set(mock_browser): function test_apply_user_agent_override_metadata_consistency (line 1454) | async def test_apply_user_agent_override_metadata_consistency(mock_brows... function test_start_applies_user_agent_override (line 1480) | async def test_start_applies_user_agent_override(mock_browser): function test_new_tab_applies_user_agent_override (line 1496) | async def test_new_tab_applies_user_agent_override(mock_browser): FILE: tests/test_browser/test_browser_chrome.py class TestChromeInitialization (line 12) | class TestChromeInitialization: method test_chrome_initialization_default_options (line 15) | def test_chrome_initialization_default_options(self): method test_chrome_initialization_custom_options (line 38) | def test_chrome_initialization_custom_options(self): method test_chrome_initialization_custom_port (line 66) | def test_chrome_initialization_custom_port(self): method test_chrome_initialization_both_custom (line 90) | def test_chrome_initialization_both_custom(self): class TestChromeDefaultBinaryLocation (line 119) | class TestChromeDefaultBinaryLocation: method test_get_default_binary_location_success (line 144) | def test_get_default_binary_location_success( method test_get_default_binary_location_unsupported_os (line 159) | def test_get_default_binary_location_unsupported_os(self, mock_platfor... method test_get_default_binary_location_unknown_os (line 167) | def test_get_default_binary_location_unknown_os(self, mock_platform_sy... method test_get_default_binary_location_validation_error (line 176) | def test_get_default_binary_location_validation_error( method test_get_default_binary_location_windows_fallback (line 188) | def test_get_default_binary_location_windows_fallback( class TestChromeOptionsManager (line 206) | class TestChromeOptionsManager: method test_options_manager_creation (line 209) | def test_options_manager_creation(self): method test_options_manager_with_none_options (line 236) | def test_options_manager_with_none_options(self): class TestChromeInheritance (line 260) | class TestChromeInheritance: method test_chrome_inherits_from_browser (line 263) | def test_chrome_inherits_from_browser(self): method test_chrome_overrides_get_default_binary_location (line 290) | def test_chrome_overrides_get_default_binary_location(self): class TestChromeEdgeCases (line 301) | class TestChromeEdgeCases: method test_chrome_with_empty_options (line 304) | def test_chrome_with_empty_options(self): method test_chrome_with_zero_port (line 329) | def test_chrome_with_zero_port(self): method test_chrome_with_negative_port (line 352) | def test_chrome_with_negative_port(self): class TestChromeIntegration (line 374) | class TestChromeIntegration: method test_chrome_full_initialization_flow (line 377) | def test_chrome_full_initialization_flow(self): method test_chrome_options_initialization_flow (line 428) | def test_chrome_options_initialization_flow(self): method test_chrome_user_data_dir_and_preferences (line 458) | async def test_chrome_user_data_dir_and_preferences(self, tmp_path): method test_chrome_user_data_dir_with_invalid_json_preferences (line 521) | async def test_chrome_user_data_dir_with_invalid_json_preferences(self... FILE: tests/test_browser/test_browser_edge.py class TestEdgeInitialization (line 12) | class TestEdgeInitialization: method test_edge_initialization_default_options (line 15) | def test_edge_initialization_default_options(self): method test_edge_initialization_custom_options (line 38) | def test_edge_initialization_custom_options(self): method test_edge_initialization_custom_port (line 66) | def test_edge_initialization_custom_port(self): method test_edge_initialization_both_custom (line 90) | def test_edge_initialization_both_custom(self): class TestEdgeDefaultBinaryLocation (line 119) | class TestEdgeDefaultBinaryLocation: method test_get_default_binary_location_success (line 144) | def test_get_default_binary_location_success( method test_get_default_binary_location_unsupported_os (line 159) | def test_get_default_binary_location_unsupported_os(self, mock_platfor... method test_get_default_binary_location_unknown_os (line 167) | def test_get_default_binary_location_unknown_os(self, mock_platform_sy... method test_get_default_binary_location_validation_error (line 176) | def test_get_default_binary_location_validation_error( method test_get_default_binary_location_windows_fallback (line 188) | def test_get_default_binary_location_windows_fallback( method test_get_default_binary_location_linux_path (line 207) | def test_get_default_binary_location_linux_path( method test_get_default_binary_location_macos_path (line 222) | def test_get_default_binary_location_macos_path( class TestEdgeOptionsManager (line 236) | class TestEdgeOptionsManager: method test_options_manager_creation (line 239) | def test_options_manager_creation(self): method test_options_manager_with_none_options (line 266) | def test_options_manager_with_none_options(self): class TestEdgeInheritance (line 290) | class TestEdgeInheritance: method test_edge_inherits_from_browser (line 293) | def test_edge_inherits_from_browser(self): method test_edge_overrides_get_default_binary_location (line 320) | def test_edge_overrides_get_default_binary_location(self): method test_edge_uses_chromium_options_manager (line 330) | def test_edge_uses_chromium_options_manager(self): class TestEdgeEdgeCases (line 354) | class TestEdgeEdgeCases: method test_edge_with_empty_options (line 357) | def test_edge_with_empty_options(self): method test_edge_with_zero_port (line 382) | def test_edge_with_zero_port(self): method test_edge_with_negative_port (line 405) | def test_edge_with_negative_port(self): method test_edge_with_edge_specific_arguments (line 426) | def test_edge_with_edge_specific_arguments(self): class TestEdgeIntegration (line 454) | class TestEdgeIntegration: method test_edge_full_initialization_flow (line 457) | def test_edge_full_initialization_flow(self): method test_edge_options_initialization_flow (line 497) | def test_edge_options_initialization_flow(self): method test_edge_vs_chrome_compatibility (line 526) | def test_edge_vs_chrome_compatibility(self): FILE: tests/test_browser/test_browser_options.py function test_initial_arguments (line 13) | def test_initial_arguments(): function test_initial_binary_location (line 18) | def test_initial_binary_location(): function test_set_binary_location (line 23) | def test_set_binary_location(): function test_set_start_timeout (line 29) | def test_set_start_timeout(): function test_initial_page_load_state (line 35) | def test_initial_page_load_state(): function test_set_page_load_state (line 40) | def test_set_page_load_state(): function test_add_argument (line 46) | def test_add_argument(): function test_add_duplicate_argument (line 52) | def test_add_duplicate_argument(): function test_remove_argument (line 58) | def test_remove_argument(): function test_remove_argument_not_exists (line 64) | def test_remove_argument_not_exists(): function test_add_multiple_arguments (line 69) | def test_add_multiple_arguments(): function test_set_default_download_directory (line 76) | def test_set_default_download_directory(): function test_set_prompt_for_download (line 82) | def test_set_prompt_for_download(): function test_set_block_popups (line 89) | def test_set_block_popups(): function test_set_password_manager_enabled (line 96) | def test_set_password_manager_enabled(): function test_set_block_notifications (line 103) | def test_set_block_notifications(): function test_set_allow_automatic_downloads (line 113) | def test_set_allow_automatic_downloads(): function test_set_open_pdf_externally (line 125) | def test_set_open_pdf_externally(): function test_set_accept_languages (line 132) | def test_set_accept_languages(): function test_set_multiple_prefs (line 138) | def test_set_multiple_prefs(): function test_dict_prefs (line 167) | def test_dict_prefs(): function test_not_dict_prefs_error (line 175) | def test_not_dict_prefs_error(): function test_wrong_dict_prefs_error (line 181) | def test_wrong_dict_prefs_error(): function test_set_arguments (line 190) | def test_set_arguments(): function test_get_pref_path (line 195) | def test_get_pref_path(): function test_get_pref_path_none (line 201) | def test_get_pref_path_none(): function test_options_interface_enforcement (line 206) | def test_options_interface_enforcement(): function test_set_headless (line 250) | def test_set_headless(): function test_set_headless_false (line 256) | def test_set_headless_false(): function test_set_headless_true_twice (line 265) | def test_set_headless_true_twice(): function test_set_headless_false_twice (line 274) | def test_set_headless_false_twice(): function test_set_webrtc_leak_protection (line 283) | def test_set_webrtc_leak_protection(): function test_set_webrtc_leak_protection_false (line 289) | def test_set_webrtc_leak_protection_false(): function test_set_webrtc_leak_protection_true_twice (line 298) | def test_set_webrtc_leak_protection_true_twice(): function test_set_webrtc_leak_protection_false_twice (line 307) | def test_set_webrtc_leak_protection_false_twice(): FILE: tests/test_browser/test_browser_tab.py function mock_connection_handler (line 39) | async def mock_connection_handler(): function mock_browser (line 53) | async def mock_browser(): function tab (line 62) | async def tab(mock_browser, mock_connection_handler): function assert_mock_called_at_least_once (line 75) | def assert_mock_called_at_least_once(mock_obj, method_name='execute_comm... function cleanup_tab_registry (line 86) | def cleanup_tab_registry(): class TestTabInitialization (line 91) | class TestTabInitialization: method test_tab_initialization (line 94) | def test_tab_initialization(self, tab, mock_browser): method test_tab_init_raises_when_no_identifiers (line 107) | def test_tab_init_raises_when_no_identifiers(self, mock_browser): method test_tab_properties (line 111) | def test_tab_properties(self, tab): class TestTabProperties (line 137) | class TestTabProperties: method test_current_url (line 141) | async def test_current_url(self, tab): method test_page_source (line 154) | async def test_page_source(self, tab): method test_title (line 167) | async def test_title(self, tab): method test_title_empty (line 179) | async def test_title_empty(self, tab): class TestTabEventManagement (line 189) | class TestTabEventManagement: method test_enable_page_events (line 193) | async def test_enable_page_events(self, tab): method test_enable_network_events (line 200) | async def test_enable_network_events(self, tab): method test_enable_fetch_events (line 207) | async def test_enable_fetch_events(self, tab): method test_enable_fetch_events_with_params (line 214) | async def test_enable_fetch_events_with_params(self, tab): method test_enable_dom_events (line 225) | async def test_enable_dom_events(self, tab): method test_enable_runtime_events (line 232) | async def test_enable_runtime_events(self, tab): method test_enable_intercept_file_chooser_dialog (line 239) | async def test_enable_intercept_file_chooser_dialog(self, tab): method test_disable_fetch_events (line 246) | async def test_disable_fetch_events(self, tab): method test_disable_page_events (line 254) | async def test_disable_page_events(self, tab): method test_disable_network_events (line 262) | async def test_disable_network_events(self, tab): method test_disable_dom_events (line 270) | async def test_disable_dom_events(self, tab): method test_disable_runtime_events (line 278) | async def test_disable_runtime_events(self, tab): method test_disable_intercept_file_chooser_dialog (line 286) | async def test_disable_intercept_file_chooser_dialog(self, tab): class TestTabCookieManagement (line 294) | class TestTabCookieManagement: method test_get_cookies (line 298) | async def test_get_cookies(self, tab): method test_get_cookies_uses_storage_commands_with_browser_context_id (line 310) | async def test_get_cookies_uses_storage_commands_with_browser_context_id( method test_get_cookies_uses_network_commands_without_browser_context_id (line 339) | async def test_get_cookies_uses_network_commands_without_browser_conte... method test_set_cookies (line 368) | async def test_set_cookies(self, tab): method test_delete_all_cookies (line 377) | async def test_delete_all_cookies(self, tab): class TestTabNavigation (line 385) | class TestTabNavigation: method test_go_to_new_url (line 389) | async def test_go_to_new_url(self, tab): method test_go_to_same_url (line 409) | async def test_go_to_same_url(self, tab): method test_go_to_timeout (line 429) | async def test_go_to_timeout(self, tab): method test_refresh (line 445) | async def test_refresh(self, tab): method test_refresh_with_params (line 464) | async def test_refresh_with_params(self, tab): class TestTabScreenshotAndPDF (line 483) | class TestTabScreenshotAndPDF: method test_take_screenshot_to_file (line 487) | async def test_take_screenshot_to_file(self, tab, tmp_path): method test_take_screenshot_as_base64 (line 508) | async def test_take_screenshot_as_base64(self, tab): method test_take_screenshot_beyond_viewport (line 521) | async def test_take_screenshot_beyond_viewport(self, tab): method test_take_screenshot_in_iframe_raises_top_level_required (line 541) | async def test_take_screenshot_in_iframe_raises_top_level_required(sel... method test_print_to_pdf_to_file (line 549) | async def test_print_to_pdf_to_file(self, tab, tmp_path): method test_print_to_pdf_as_base64 (line 570) | async def test_print_to_pdf_as_base64(self, tab): method test_print_to_pdf_with_options (line 583) | async def test_print_to_pdf_with_options(self, tab, tmp_path): class TestTabDialogHandling (line 610) | class TestTabDialogHandling: method test_has_dialog_true (line 614) | async def test_has_dialog_true(self, tab): method test_has_dialog_false (line 622) | async def test_has_dialog_false(self, tab): method test_get_dialog_message_success (line 630) | async def test_get_dialog_message_success(self, tab): method test_get_dialog_message_no_dialog (line 638) | async def test_get_dialog_message_no_dialog(self, tab): method test_handle_dialog_accept (line 646) | async def test_handle_dialog_accept(self, tab): method test_handle_dialog_dismiss (line 655) | async def test_handle_dialog_dismiss(self, tab): method test_handle_dialog_with_prompt_text (line 664) | async def test_handle_dialog_with_prompt_text(self, tab): method test_handle_dialog_no_dialog (line 673) | async def test_handle_dialog_no_dialog(self, tab): class TestTabScriptExecution (line 681) | class TestTabScriptExecution: method test_execute_script_simple (line 685) | async def test_execute_script_simple(self, tab): method test_execute_script_return_outside_function (line 696) | async def test_execute_script_return_outside_function(self, tab): method test_execute_script_return_inside_function (line 708) | async def test_execute_script_return_inside_function(self, tab): method test_execute_script_no_return_statement (line 726) | async def test_execute_script_no_return_statement(self, tab): method test_execute_script_with_comments_and_strings (line 738) | async def test_execute_script_with_comments_and_strings(self, tab): method test_execute_script_already_wrapped_function (line 756) | async def test_execute_script_already_wrapped_function(self, tab): method test_execute_script_with_webelement_deprecation_warning (line 769) | async def test_execute_script_with_webelement_deprecation_warning(self... method test_execute_script_with_webelement_all_parameters (line 795) | async def test_execute_script_with_webelement_all_parameters(self, tab): method test_validate_argument_error_early_returns (line 849) | def test_validate_argument_error_early_returns(self, tab, response): method test_validate_argument_error_raises_on_match (line 857) | def test_validate_argument_error_raises_on_match(self, tab, description): method test_execute_script_triggers_validation (line 873) | async def test_execute_script_triggers_validation(self, tab): class TestTabEventCallbacks (line 889) | class TestTabEventCallbacks: method test_on_callback_registration (line 893) | async def test_on_callback_registration(self, tab): method test_on_temporary_callback (line 907) | async def test_on_temporary_callback(self, tab): method test_remove_callback_success (line 924) | async def test_remove_callback_success(self, tab): method test_remove_callback_false (line 934) | async def test_remove_callback_false(self, tab): class TestTabFileChooser (line 944) | class TestTabFileChooser: method test_expect_file_chooser_single_file (line 948) | async def test_expect_file_chooser_single_file(self, tab): method test_expect_file_chooser_multiple_files (line 973) | async def test_expect_file_chooser_multiple_files(self, tab): method test_expect_file_chooser_with_path_objects (line 1000) | async def test_expect_file_chooser_with_path_objects(self, tab): method test_expect_file_chooser_event_handler_single_file (line 1027) | async def test_expect_file_chooser_event_handler_single_file(self, tab): method test_expect_file_chooser_event_handler_multiple_files (line 1072) | async def test_expect_file_chooser_event_handler_multiple_files(self, ... method _test_event_handler_with_files (line 1116) | async def _test_event_handler_with_files(self, tab, files, expected_fi... method test_expect_file_chooser_event_handler_path_objects (line 1161) | async def test_expect_file_chooser_event_handler_path_objects(self, tab): method test_expect_file_chooser_event_handler_single_path_object (line 1171) | async def test_expect_file_chooser_event_handler_single_path_object(se... method test_expect_file_chooser_event_handler_empty_list (line 1181) | async def test_expect_file_chooser_event_handler_empty_list(self, tab): class TestTabCloudflareBypass (line 1191) | class TestTabCloudflareBypass: method test_enable_auto_solve_cloudflare_captcha (line 1195) | async def test_enable_auto_solve_cloudflare_captcha(self, tab): method test_enable_auto_solve_cloudflare_captcha_with_params (line 1209) | async def test_enable_auto_solve_cloudflare_captcha_with_params(self, ... method test_disable_auto_solve_cloudflare_captcha (line 1225) | async def test_disable_auto_solve_cloudflare_captcha(self, tab): method test_expect_and_bypass_cloudflare_captcha (line 1235) | async def test_expect_and_bypass_cloudflare_captcha(self, tab): method test_bypass_cloudflare_with_shadow_root_traversal (line 1258) | async def test_bypass_cloudflare_with_shadow_root_traversal(self, tab): method test_bypass_cloudflare_no_shadow_root_found (line 1283) | async def test_bypass_cloudflare_no_shadow_root_found(self, tab): method test_bypass_cloudflare_custom_selector_emits_deprecation (line 1296) | async def test_bypass_cloudflare_custom_selector_emits_deprecation(sel... method test_time_before_click_emits_deprecation (line 1309) | async def test_time_before_click_emits_deprecation(self, tab): method test_expect_bypass_time_before_click_emits_deprecation (line 1322) | async def test_expect_bypass_time_before_click_emits_deprecation(self,... method test_expect_bypass_custom_selector_emits_deprecation (line 1342) | async def test_expect_bypass_custom_selector_emits_deprecation(self, t... method test_find_cloudflare_shadow_root_polls_until_found (line 1362) | async def test_find_cloudflare_shadow_root_polls_until_found(self, tab): method test_find_cloudflare_shadow_root_timeout (line 1395) | async def test_find_cloudflare_shadow_root_timeout(self, tab): class TestTabDownload (line 1419) | class TestTabDownload: method test_expect_download_keeps_file_when_path_provided (line 1423) | async def test_expect_download_keeps_file_when_path_provided(self, tab... method test_expect_download_timeout_raises (line 1470) | async def test_expect_download_timeout_raises(self, tab, tmp_path): method test_expect_download_cleans_temp_directory (line 1496) | async def test_expect_download_cleans_temp_directory(self, tab, tmp_pa... method test_expect_download_ignores_progress_with_different_guid (line 1538) | async def test_expect_download_ignores_progress_with_different_guid(se... method test_expect_download_page_events_auto_enable_disable (line 1588) | async def test_expect_download_page_events_auto_enable_disable(self, t... method test_expect_download_keeps_page_events_enabled_when_already_enabled (line 1630) | async def test_expect_download_keeps_page_events_enabled_when_already_... class TestTabFrameHandling (line 1672) | class TestTabFrameHandling: method test_get_frame_success (line 1676) | async def test_get_frame_success(self, tab, mock_browser): method test_get_frame_uses_cache_on_subsequent_calls (line 1694) | async def test_get_frame_uses_cache_on_subsequent_calls(self, tab, moc... method test_get_frame_not_iframe (line 1719) | async def test_get_frame_not_iframe(self, tab): method test_get_frame_no_frame_id (line 1729) | async def test_get_frame_no_frame_id(self, tab, mock_browser): class TestTabUtilityMethods (line 1743) | class TestTabUtilityMethods: method test_bring_to_front (line 1747) | async def test_bring_to_front(self, tab): method test_close (line 1757) | async def test_close(self, tab, mock_browser): method test_wait_page_load_complete (line 1766) | async def test_wait_page_load_complete(self, tab): method test_wait_page_load_interactive (line 1784) | async def test_wait_page_load_interactive(self, tab): method test_wait_page_load_timeout (line 1804) | async def test_wait_page_load_timeout(self, tab): method test_wait_page_load_cleans_up_page_events (line 1814) | async def test_wait_page_load_cleans_up_page_events(self, tab): method test_refresh_if_url_not_changed_same_url (line 1831) | async def test_refresh_if_url_not_changed_same_url(self, tab): method test_refresh_if_url_not_changed_different_url (line 1852) | async def test_refresh_if_url_not_changed_different_url(self, tab): class TestTabRequestManagement (line 1864) | class TestTabRequestManagement: method test_continue_request (line 1868) | async def test_continue_request(self, tab): method test_fail_request (line 1893) | async def test_fail_request(self, tab): method test_fulfill_request (line 1915) | async def test_fulfill_request(self, tab): method test_continue_request_with_all_params (line 1940) | async def test_continue_request_with_all_params(self, tab): method test_continue_request_with_different_id (line 1977) | async def test_continue_request_with_different_id(self, tab): method test_fail_request_with_different_error (line 1991) | async def test_fail_request_with_different_error(self, tab): method test_fulfill_request_with_all_params (line 2008) | async def test_fulfill_request_with_all_params(self, tab): method test_fulfill_request_with_different_status_code (line 2041) | async def test_fulfill_request_with_different_status_code(self, tab): method test_fulfill_request_empty_headers (line 2063) | async def test_fulfill_request_empty_headers(self, tab): class TestTabEdgeCases (line 2084) | class TestTabEdgeCases: method test_take_screenshot_invalid_extension (line 2088) | async def test_take_screenshot_invalid_extension(self, tab): method test_print_to_pdf_with_invalid_path (line 2094) | async def test_print_to_pdf_with_invalid_path(self, tab): method test_network_logs_property (line 2106) | async def test_network_logs_property(self, tab): method test_dialog_property (line 2115) | async def test_dialog_property(self, tab): class TestTabNetworkMethods (line 2124) | class TestTabNetworkMethods: method test_get_network_response_body_success (line 2128) | async def test_get_network_response_body_success(self, tab): method test_get_network_response_body_events_not_enabled (line 2145) | async def test_get_network_response_body_events_not_enabled(self, tab): method test_get_network_logs_success_no_filter (line 2157) | async def test_get_network_logs_success_no_filter(self, tab): method test_get_network_logs_success_with_filter (line 2187) | async def test_get_network_logs_success_with_filter(self, tab): method test_get_network_logs_empty_filter_result (line 2226) | async def test_get_network_logs_empty_filter_result(self, tab): method test_get_network_logs_events_not_enabled (line 2248) | async def test_get_network_logs_events_not_enabled(self, tab): method test_get_network_logs_missing_request_params (line 2259) | async def test_get_network_logs_missing_request_params(self, tab): class TestTabSaveBundle (line 2289) | class TestTabSaveBundle: method _enable_page_events (line 2293) | def _enable_page_events(self, tab): method _make_frame_tree (line 2297) | def _make_frame_tree(self, frame_id='F1', page_url='https://example.co... method _make_resource (line 2317) | def _make_resource(self, url, rtype='Stylesheet', mime='text/css', method test_save_bundle_invalid_extension (line 2327) | async def test_save_bundle_invalid_extension(self, tab): method test_save_bundle_separate_assets (line 2332) | async def test_save_bundle_separate_assets(self, tab, tmp_path): method test_save_bundle_inline_assets (line 2375) | async def test_save_bundle_inline_assets(self, tab, tmp_path): method test_save_bundle_skips_failed_resources (line 2422) | async def test_save_bundle_skips_failed_resources(self, tab, tmp_path): method test_save_bundle_handles_fetch_exceptions (line 2446) | async def test_save_bundle_handles_fetch_exceptions(self, tab, tmp_path): method test_save_bundle_handles_cdp_error_responses (line 2470) | async def test_save_bundle_handles_cdp_error_responses(self, tab, tmp_... method test_save_bundle_empty_resources (line 2494) | async def test_save_bundle_empty_resources(self, tab, tmp_path): method test_save_bundle_base64_encoded_resource (line 2513) | async def test_save_bundle_base64_encoded_resource(self, tab, tmp_path): method test_save_bundle_css_url_rewriting (line 2541) | async def test_save_bundle_css_url_rewriting(self, tab, tmp_path): method test_save_bundle_child_frames (line 2578) | async def test_save_bundle_child_frames(self, tab, tmp_path): method test_save_bundle_skips_data_urls (line 2613) | async def test_save_bundle_skips_data_urls(self, tab, tmp_path): method test_collect_frame_resources_recursive (line 2634) | def test_collect_frame_resources_recursive(self): method test_build_asset_filename (line 2661) | def test_build_asset_filename(self): method test_build_asset_filename_no_extension (line 2667) | def test_build_asset_filename_no_extension(self): method test_build_asset_filename_no_path (line 2673) | def test_build_asset_filename_no_path(self): method test_rewrite_css_urls (line 2679) | def test_rewrite_css_urls(self): method test_rewrite_css_urls_relative (line 2691) | def test_rewrite_css_urls_relative(self): method test_rewrite_css_urls_skips_data_uris (line 2703) | def test_rewrite_css_urls_skips_data_uris(self): method test_save_bundle_js_fallback_when_resource_content_fails (line 2709) | async def test_save_bundle_js_fallback_when_resource_content_fails(sel... FILE: tests/test_browser/test_har_recorder.py function mock_tab (line 15) | async def mock_tab(): function recorder (line 31) | async def recorder(mock_tab): function request_instance (line 37) | async def request_instance(mock_tab): function _make_request_will_be_sent_event (line 42) | def _make_request_will_be_sent_event( function _make_request_extra_info_event (line 74) | def _make_request_extra_info_event(request_id='req-1'): function _make_response_received_event (line 87) | def _make_response_received_event( function _make_response_extra_info_event (line 128) | def _make_response_extra_info_event(request_id='req-1'): function _make_data_received_event (line 142) | def _make_data_received_event(request_id='req-1', encoded_data_length=500): function _make_loading_finished_event (line 155) | def _make_loading_finished_event(request_id='req-1', encoded_data_length... function _make_loading_failed_event (line 167) | def _make_loading_failed_event( class TestHarRecorderStart (line 183) | class TestHarRecorderStart: method test_start_registers_seven_callbacks (line 187) | async def test_start_registers_seven_callbacks(self, recorder, mock_tab): method test_start_stores_callback_ids (line 192) | async def test_start_stores_callback_ids(self, recorder, mock_tab): method test_start_enables_network_events_if_not_enabled (line 197) | async def test_start_enables_network_events_if_not_enabled(self, recor... method test_start_skips_network_enable_if_already_enabled (line 204) | async def test_start_skips_network_enable_if_already_enabled(self, rec... method test_start_registers_correct_events (line 211) | async def test_start_registers_correct_events(self, recorder, mock_tab): method test_start_sets_start_time (line 223) | async def test_start_sets_start_time(self, recorder, mock_tab): class TestHarRecorderStop (line 229) | class TestHarRecorderStop: method test_stop_removes_all_callbacks (line 233) | async def test_stop_removes_all_callbacks(self, recorder, mock_tab): method test_stop_clears_callback_ids (line 239) | async def test_stop_clears_callback_ids(self, recorder, mock_tab): method test_stop_disables_network_events_if_we_enabled (line 245) | async def test_stop_disables_network_events_if_we_enabled(self, record... method test_stop_does_not_disable_network_events_if_not_ours (line 252) | async def test_stop_does_not_disable_network_events_if_not_ours(self, ... method test_stop_flushes_pending_entries (line 259) | async def test_stop_flushes_pending_entries(self, recorder, mock_tab): class TestHarRecorderEventHandlers (line 272) | class TestHarRecorderEventHandlers: method test_request_will_be_sent_creates_pending (line 276) | async def test_request_will_be_sent_creates_pending(self, recorder): method test_request_extra_info_merges_headers (line 284) | async def test_request_extra_info_merges_headers(self, recorder): method test_request_extra_info_skips_unknown_request (line 291) | async def test_request_extra_info_skips_unknown_request(self, recorder): method test_response_received_stores_data (line 296) | async def test_response_received_stores_data(self, recorder): method test_response_received_skips_unknown_request (line 307) | async def test_response_received_skips_unknown_request(self, recorder): method test_response_extra_info_merges_headers (line 312) | async def test_response_extra_info_merges_headers(self, recorder): method test_loading_finished_creates_entry (line 318) | async def test_loading_finished_creates_entry(self, recorder, mock_tab): method test_loading_finished_skips_unknown_request (line 335) | async def test_loading_finished_skips_unknown_request(self, recorder): method test_loading_failed_creates_entry (line 340) | async def test_loading_failed_creates_entry(self, recorder): method test_loading_failed_skips_unknown_request (line 350) | async def test_loading_failed_skips_unknown_request(self, recorder): method test_redirect_handling (line 355) | async def test_redirect_handling(self, recorder, mock_tab): class TestHarRecorderHelpers (line 387) | class TestHarRecorderHelpers: method test_headers_dict_to_list (line 390) | def test_headers_dict_to_list(self): method test_headers_dict_to_list_empty (line 397) | def test_headers_dict_to_list_empty(self): method test_parse_query_string (line 400) | def test_parse_query_string(self): method test_parse_query_string_no_query (line 408) | def test_parse_query_string_no_query(self): method test_parse_query_string_empty_values (line 411) | def test_parse_query_string_empty_values(self): method test_wall_time_to_iso (line 418) | def test_wall_time_to_iso(self): method test_wall_time_to_iso_zero (line 423) | def test_wall_time_to_iso_zero(self): method test_build_har_timings_none (line 428) | def test_build_har_timings_none(self): method test_build_har_timings_with_data (line 438) | def test_build_har_timings_with_data(self): method test_build_har_timings_with_receive_ms (line 469) | def test_build_har_timings_with_receive_ms(self): method test_build_har_timings_no_ssl (line 497) | def test_build_har_timings_no_ssl(self): class TestHarRecorderBuildEntry (line 528) | class TestHarRecorderBuildEntry: method test_build_entry_basic (line 532) | async def test_build_entry_basic(self, recorder): method test_build_entry_with_post_data (line 550) | async def test_build_entry_with_post_data(self, recorder): method test_build_entry_with_response_body (line 570) | async def test_build_entry_with_response_body(self, recorder): method test_build_entry_with_base64_body (line 589) | async def test_build_entry_with_base64_body(self, recorder): method test_build_entry_with_server_ip (line 607) | async def test_build_entry_with_server_ip(self, recorder): method test_build_entry_with_resource_type (line 623) | async def test_build_entry_with_resource_type(self, recorder): method test_build_entry_uses_extra_headers_when_available (line 639) | async def test_build_entry_uses_extra_headers_when_available(self, rec... class TestHarCapture (line 659) | class TestHarCapture: method test_entries_returns_copy (line 663) | async def test_entries_returns_copy(self, recorder): method test_to_dict_structure (line 681) | async def test_to_dict_structure(self, recorder): method test_to_dict_includes_entries (line 691) | async def test_to_dict_includes_entries(self, recorder): method test_save_writes_json_file (line 706) | async def test_save_writes_json_file(self, recorder, tmp_path): method test_save_with_string_path (line 727) | async def test_save_with_string_path(self, recorder, tmp_path): method test_save_creates_parent_directories (line 734) | async def test_save_creates_parent_directories(self, recorder, tmp_path): class TestRequestRecord (line 741) | class TestRequestRecord: method test_record_yields_har_recording (line 745) | async def test_record_yields_har_recording(self, request_instance): method test_record_enables_network_events (line 750) | async def test_record_enables_network_events(self, request_instance, m... method test_record_registers_and_removes_callbacks (line 757) | async def test_record_registers_and_removes_callbacks(self, request_in... method test_record_cleans_up_on_exception (line 763) | async def test_record_cleans_up_on_exception(self, request_instance, m... method test_record_disables_network_events_if_enabled_by_recorder (line 771) | async def test_record_disables_network_events_if_enabled_by_recorder( method test_record_does_not_disable_network_events_if_already_enabled (line 780) | async def test_record_does_not_disable_network_events_if_already_enabled( class TestResourceTypeFiltering (line 789) | class TestResourceTypeFiltering: method test_filter_skips_non_matching_types (line 793) | async def test_filter_skips_non_matching_types(self, mock_tab): method test_filter_accepts_matching_types (line 811) | async def test_filter_accepts_matching_types(self, mock_tab): method test_no_filter_accepts_all (line 829) | async def test_no_filter_accepts_all(self, mock_tab): method test_record_passes_resource_types (line 846) | async def test_record_passes_resource_types(self, request_instance, mo... class TestHarRecorderFetchResponseBody (line 854) | class TestHarRecorderFetchResponseBody: method test_fetch_response_body_success (line 858) | async def test_fetch_response_body_success(self, recorder, mock_tab): method test_fetch_response_body_base64 (line 867) | async def test_fetch_response_body_base64(self, recorder, mock_tab): method test_fetch_response_body_failure (line 876) | async def test_fetch_response_body_failure(self, recorder, mock_tab): class TestHarRecorderEndToEnd (line 883) | class TestHarRecorderEndToEnd: method test_full_request_lifecycle (line 887) | async def test_full_request_lifecycle(self, recorder, mock_tab): method test_multiple_concurrent_requests (line 917) | async def test_multiple_concurrent_requests(self, recorder, mock_tab): class TestHarRecorderCookieParsing (line 944) | class TestHarRecorderCookieParsing: method test_parse_request_cookies (line 947) | def test_parse_request_cookies(self): method test_parse_request_cookies_empty (line 956) | def test_parse_request_cookies_empty(self): method test_parse_request_cookies_lowercase_header (line 959) | def test_parse_request_cookies_lowercase_header(self): method test_parse_response_cookies (line 965) | def test_parse_response_cookies(self): method test_parse_response_cookies_multiple (line 975) | def test_parse_response_cookies_multiple(self): method test_parse_response_cookies_empty (line 983) | def test_parse_response_cookies_empty(self): method test_parse_response_cookies_with_domain (line 986) | def test_parse_response_cookies_with_domain(self): class TestHarRecorderBodySizes (line 994) | class TestHarRecorderBodySizes: method test_response_body_size_uses_data_received_bytes (line 998) | async def test_response_body_size_uses_data_received_bytes(self, recor... method test_response_body_size_unknown_returns_negative_one (line 1017) | async def test_response_body_size_unknown_returns_negative_one(self, r... method test_response_body_size_304_is_zero (line 1033) | async def test_response_body_size_304_is_zero(self, recorder): method test_content_size_base64_decoded (line 1050) | async def test_content_size_base64_decoded(self, recorder): method test_request_body_size_bytes (line 1071) | async def test_request_body_size_bytes(self, recorder): class TestHarRecorderCacheField (line 1089) | class TestHarRecorderCacheField: method test_entry_has_cache_field (line 1093) | async def test_entry_has_cache_field(self, recorder): class TestHarRecorderCookiesInEntries (line 1109) | class TestHarRecorderCookiesInEntries: method test_request_cookies_from_cookie_header (line 1113) | async def test_request_cookies_from_cookie_header(self, recorder): method test_response_cookies_from_set_cookie (line 1131) | async def test_response_cookies_from_set_cookie(self, recorder): class TestHarRecorderDataReceived (line 1148) | class TestHarRecorderDataReceived: method test_data_received_accumulates_bytes (line 1151) | def test_data_received_accumulates_bytes(self, recorder): method test_data_received_separate_requests (line 1156) | def test_data_received_separate_requests(self, recorder): method test_loading_finished_consumes_data_received (line 1163) | async def test_loading_finished_consumes_data_received(self, recorder,... method test_loading_failed_cleans_up_data_received (line 1178) | def test_loading_failed_cleans_up_data_received(self, recorder): class TestHarRecorderExtraStatusCode (line 1185) | class TestHarRecorderExtraStatusCode: method test_extra_status_code_overrides_response_status (line 1189) | async def test_extra_status_code_overrides_response_status(self, recor... method test_normal_status_when_no_extra (line 1217) | async def test_normal_status_when_no_extra(self, recorder, mock_tab): class TestHarRecorderReceiveTiming (line 1229) | class TestHarRecorderReceiveTiming: method test_receive_from_monotonic_timestamps (line 1233) | async def test_receive_from_monotonic_timestamps(self, recorder, mock_... method test_receive_fallback_zero_without_timestamps (line 1249) | def test_receive_fallback_zero_without_timestamps(self, recorder): class TestHarRecorderEntryTimeSslExclusion (line 1265) | class TestHarRecorderEntryTimeSslExclusion: method test_entry_time_excludes_ssl (line 1268) | def test_entry_time_excludes_ssl(self, recorder): class TestHarRecorderEntryOrdering (line 1325) | class TestHarRecorderEntryOrdering: method test_entries_sorted_by_started_date_time (line 1329) | async def test_entries_sorted_by_started_date_time(self, recorder): class TestHarRecorderBodySizeFallback (line 1359) | class TestHarRecorderBodySizeFallback: method test_body_size_falls_back_to_content_size (line 1363) | async def test_body_size_falls_back_to_content_size(self, recorder): method test_body_size_negative_one_when_no_body_and_no_bytes (line 1384) | async def test_body_size_negative_one_when_no_body_and_no_bytes(self, ... class TestHarRecorderHttpVersionNormalization (line 1401) | class TestHarRecorderHttpVersionNormalization: method test_h2_stays_lowercase (line 1404) | def test_h2_stays_lowercase(self): method test_h3_stays_lowercase (line 1407) | def test_h3_stays_lowercase(self): method test_http_1_1_uppercased (line 1410) | def test_http_1_1_uppercased(self): method test_http_1_0_uppercased (line 1413) | def test_http_1_0_uppercased(self): method test_already_uppercase (line 1416) | def test_already_uppercase(self): method test_file_protocol_returns_empty (line 1419) | def test_file_protocol_returns_empty(self): method test_empty_string (line 1422) | def test_empty_string(self): method test_unknown_protocol_returns_empty (line 1425) | def test_unknown_protocol_returns_empty(self): method test_entry_uses_normalized_version (line 1428) | def test_entry_uses_normalized_version(self, recorder): FILE: tests/test_browser/test_requests_request.py function mock_tab (line 20) | async def mock_tab(): function request_instance (line 33) | async def request_instance(mock_tab): class TestRequestInitialization (line 38) | class TestRequestInitialization: method test_request_initialization (line 41) | def test_request_initialization(self, mock_tab): method test_request_initialization_preserves_tab_reference (line 50) | def test_request_initialization_preserves_tab_reference(self, mock_tab): class TestRequestMethods (line 56) | class TestRequestMethods: method test_get_method (line 60) | async def test_get_method(self, request_instance): method test_post_method (line 72) | async def test_post_method(self, request_instance): method test_put_method (line 91) | async def test_put_method(self, request_instance): method test_patch_method (line 103) | async def test_patch_method(self, request_instance): method test_delete_method (line 115) | async def test_delete_method(self, request_instance): method test_head_method (line 125) | async def test_head_method(self, request_instance): method test_options_method (line 135) | async def test_options_method(self, request_instance): class TestRequestMainMethod (line 145) | class TestRequestMainMethod: method test_request_success_flow (line 149) | async def test_request_success_flow(self, request_instance, mock_tab): method test_request_with_params (line 185) | async def test_request_with_params(self, request_instance): method test_request_with_json_data (line 207) | async def test_request_with_json_data(self, request_instance): method test_request_failure_raises_http_error (line 231) | async def test_request_failure_raises_http_error(self, request_instanc... method test_request_always_clears_callbacks (line 239) | async def test_request_always_clears_callbacks(self, request_instance,... class TestRequestHelperMethods (line 250) | class TestRequestHelperMethods: method test_build_url_with_params_no_params (line 253) | def test_build_url_with_params_no_params(self, request_instance): method test_build_url_with_params_simple (line 259) | def test_build_url_with_params_simple(self, request_instance): method test_build_url_with_params_existing_query (line 269) | def test_build_url_with_params_existing_query(self, request_instance): method test_build_request_options_basic (line 278) | def test_build_request_options_basic(self, request_instance): method test_build_request_options_with_headers (line 287) | def test_build_request_options_with_headers(self, request_instance): method test_handle_json_options (line 301) | def test_handle_json_options(self, request_instance): method test_handle_data_options_form_data (line 311) | def test_handle_data_options_form_data(self, request_instance): method test_handle_data_options_raw_data (line 321) | def test_handle_data_options_raw_data(self, request_instance): method test_convert_header_entries_to_dict (line 331) | def test_convert_header_entries_to_dict(self, request_instance): method test_convert_dict_to_header_entries (line 346) | def test_convert_dict_to_header_entries(self, request_instance): class TestRequestCallbackManagement (line 363) | class TestRequestCallbackManagement: method test_register_callbacks_enables_network_events (line 367) | async def test_register_callbacks_enables_network_events(self, request... method test_register_callbacks_skips_if_already_enabled (line 377) | async def test_register_callbacks_skips_if_already_enabled(self, reque... method test_register_callbacks_subscribes_to_events (line 387) | async def test_register_callbacks_subscribes_to_events(self, request_i... method test_clear_callbacks_disables_network_events (line 405) | async def test_clear_callbacks_disables_network_events(self, request_i... method test_clear_callbacks_skips_disable_if_not_enabled (line 418) | async def test_clear_callbacks_skips_disable_if_not_enabled(self, requ... class TestRequestCookieExtraction (line 430) | class TestRequestCookieExtraction: method test_parse_cookie_line_valid (line 433) | def test_parse_cookie_line_valid(self, request_instance): method test_parse_cookie_line_invalid (line 443) | def test_parse_cookie_line_invalid(self, request_instance): method test_parse_cookie_line_with_complex_value (line 451) | def test_parse_cookie_line_with_complex_value(self, request_instance): method test_add_unique_cookies_no_duplicates (line 461) | def test_add_unique_cookies_no_duplicates(self, request_instance): method test_parse_set_cookie_header_multiline (line 476) | def test_parse_set_cookie_header_multiline(self, request_instance): class TestRequestEdgeCases (line 487) | class TestRequestEdgeCases: method test_request_with_empty_url (line 491) | async def test_request_with_empty_url(self, request_instance): method test_build_url_with_special_characters (line 510) | def test_build_url_with_special_characters(self, request_instance): method test_handle_data_options_with_bytes (line 520) | def test_handle_data_options_with_bytes(self, request_instance): method test_convert_header_entries_empty_list (line 530) | def test_convert_header_entries_empty_list(self, request_instance): method test_convert_dict_to_header_entries_empty_dict (line 535) | def test_convert_dict_to_header_entries_empty_dict(self, request_insta... class TestRequestHeaderExtraction (line 541) | class TestRequestHeaderExtraction: method test_extract_received_headers (line 544) | def test_extract_received_headers(self, request_instance): method test_extract_sent_headers (line 590) | def test_extract_sent_headers(self, request_instance): method test_extract_headers_from_events_with_response_events (line 636) | def test_extract_headers_from_events_with_response_events(self, reques... method test_extract_headers_from_events_with_request_events (line 683) | def test_extract_headers_from_events_with_request_events(self, request... method test_extract_headers_from_events_deduplication (line 730) | def test_extract_headers_from_events_deduplication(self, request_insta... method test_extract_headers_from_events_empty_events (line 772) | def test_extract_headers_from_events_empty_events(self, request_instan... method test_extract_headers_from_events_no_matching_keys (line 784) | def test_extract_headers_from_events_no_matching_keys(self, request_in... method test_extract_request_sent_headers (line 812) | def test_extract_request_sent_headers(self, request_instance): method test_extract_request_sent_headers_empty_headers (line 839) | def test_extract_request_sent_headers_empty_headers(self, request_inst... method test_extract_request_sent_headers_missing_headers_key (line 850) | def test_extract_request_sent_headers_missing_headers_key(self, reques... method test_extract_request_sent_extra_info_headers (line 862) | def test_extract_request_sent_extra_info_headers(self, request_instance): method test_extract_request_sent_extra_info_headers_empty (line 886) | def test_extract_request_sent_extra_info_headers_empty(self, request_i... method test_extract_request_sent_extra_info_headers_missing_headers (line 896) | def test_extract_request_sent_extra_info_headers_missing_headers(self,... method test_extract_response_received_headers (line 906) | def test_extract_response_received_headers(self, request_instance): method test_extract_response_received_extra_info_headers (line 933) | def test_extract_response_received_extra_info_headers(self, request_in... method test_header_extraction_with_complex_values (line 959) | def test_header_extraction_with_complex_values(self, request_instance): method test_header_extraction_integration_flow (line 996) | def test_header_extraction_integration_flow(self, request_instance): method test_filter_response_extra_info_events (line 1052) | def test_filter_response_extra_info_events(self, request_instance): method test_filter_response_extra_info_events_empty (line 1096) | def test_filter_response_extra_info_events_empty(self, request_instance): method test_filter_response_extra_info_events_no_events (line 1120) | def test_filter_response_extra_info_events_no_events(self, request_ins... method test_extract_set_cookies_basic (line 1130) | def test_extract_set_cookies_basic(self, request_instance): method test_extract_set_cookies_multiple_cookies_same_header (line 1174) | def test_extract_set_cookies_multiple_cookies_same_header(self, reques... method test_extract_set_cookies_duplicate_names (line 1214) | def test_extract_set_cookies_duplicate_names(self, request_instance): method test_extract_set_cookies_complex_values (line 1255) | def test_extract_set_cookies_complex_values(self, request_instance): method test_extract_set_cookies_no_set_cookie_headers (line 1285) | def test_extract_set_cookies_no_set_cookie_headers(self, request_insta... method test_extract_set_cookies_empty_events (line 1311) | def test_extract_set_cookies_empty_events(self, request_instance): method test_extract_set_cookies_malformed_cookies (line 1321) | def test_extract_set_cookies_malformed_cookies(self, request_instance): method test_extract_set_cookies_edge_case_attributes (line 1358) | def test_extract_set_cookies_edge_case_attributes(self, request_instan... method test_extract_set_cookies_integration_with_filter (line 1388) | def test_extract_set_cookies_integration_with_filter(self, request_ins... method test_extract_set_cookies_empty_name_rejection (line 1430) | def test_extract_set_cookies_empty_name_rejection(self, request_instan... method test_parse_cookie_line_empty_name_validation (line 1457) | def test_parse_cookie_line_empty_name_validation(self, request_instance): FILE: tests/test_browser/test_requests_response.py class TestResponseInitialization (line 14) | class TestResponseInitialization: method test_response_initialization_minimal (line 17) | def test_response_initialization_minimal(self): method test_response_initialization_full (line 29) | def test_response_initialization_full(self): method test_response_initialization_with_none_values (line 55) | def test_response_initialization_with_none_values(self): class TestResponseProperties (line 69) | class TestResponseProperties: method test_ok_property_success_codes (line 72) | def test_ok_property_success_codes(self): method test_ok_property_error_codes (line 80) | def test_ok_property_error_codes(self): method test_status_code_property (line 88) | def test_status_code_property(self): method test_content_property (line 93) | def test_content_property(self): method test_text_property_provided (line 100) | def test_text_property_provided(self): method test_text_property_decoded_from_content (line 106) | def test_text_property_decoded_from_content(self): method test_text_property_handles_encoding_errors (line 112) | def test_text_property_handles_encoding_errors(self): method test_text_property_empty_content (line 123) | def test_text_property_empty_content(self): method test_headers_property (line 128) | def test_headers_property(self): method test_request_headers_property (line 137) | def test_request_headers_property(self): method test_cookies_property (line 146) | def test_cookies_property(self): method test_url_property (line 155) | def test_url_property(self): method test_url_property_empty (line 161) | def test_url_property_empty(self): class TestResponseJSONMethod (line 167) | class TestResponseJSONMethod: method test_json_method_with_provided_json (line 170) | def test_json_method_with_provided_json(self): method test_json_method_parses_from_text (line 178) | def test_json_method_parses_from_text(self): method test_json_method_caches_result (line 186) | def test_json_method_caches_result(self): method test_json_method_invalid_json_raises_error (line 199) | def test_json_method_invalid_json_raises_error(self): method test_json_method_empty_text (line 206) | def test_json_method_empty_text(self): method test_json_method_with_array (line 213) | def test_json_method_with_array(self): method test_json_method_with_primitive_values (line 221) | def test_json_method_with_primitive_values(self): class TestResponseRaiseForStatus (line 237) | class TestResponseRaiseForStatus: method test_raise_for_status_success_codes (line 240) | def test_raise_for_status_success_codes(self): method test_raise_for_status_client_error (line 249) | def test_raise_for_status_client_error(self): method test_raise_for_status_server_error (line 258) | def test_raise_for_status_server_error(self): method test_raise_for_status_includes_url (line 267) | def test_raise_for_status_includes_url(self): method test_raise_for_status_empty_url (line 275) | def test_raise_for_status_empty_url(self): class TestHTTPErrorException (line 283) | class TestHTTPErrorException: method test_http_error_creation (line 286) | def test_http_error_creation(self): method test_http_error_inheritance (line 291) | def test_http_error_inheritance(self): method test_http_error_with_format_string (line 296) | def test_http_error_with_format_string(self): class TestResponseEdgeCases (line 306) | class TestResponseEdgeCases: method test_response_with_binary_content (line 309) | def test_response_with_binary_content(self): method test_response_with_unicode_text (line 317) | def test_response_with_unicode_text(self): method test_response_text_lazy_decoding (line 324) | def test_response_text_lazy_decoding(self): method test_response_with_large_content (line 336) | def test_response_with_large_content(self): method test_response_status_code_boundary_values (line 344) | def test_response_status_code_boundary_values(self): method test_response_with_complex_headers (line 358) | def test_response_with_complex_headers(self): method test_response_with_empty_json_object (line 371) | def test_response_with_empty_json_object(self): method test_response_with_nested_json (line 377) | def test_response_with_nested_json(self): class TestResponseIntegration (line 396) | class TestResponseIntegration: method test_complete_response_workflow (line 399) | def test_complete_response_workflow(self): method test_error_response_workflow (line 447) | def test_error_response_workflow(self): FILE: tests/test_browser/test_tab_request_integration.py function mock_connection_handler (line 21) | async def mock_connection_handler(): function mock_browser (line 35) | async def mock_browser(): function tab (line 43) | async def tab(mock_browser, mock_connection_handler): function cleanup_tab_registry (line 68) | def cleanup_tab_registry(): class TestTabRequestProperty (line 73) | class TestTabRequestProperty: method test_request_property_lazy_initialization (line 76) | def test_request_property_lazy_initialization(self, tab): method test_request_property_binds_to_tab (line 91) | def test_request_property_binds_to_tab(self, tab): method test_request_property_type_annotation (line 98) | def test_request_property_type_annotation(self, tab): method test_multiple_tabs_have_separate_requests (line 103) | def test_multiple_tabs_have_separate_requests(self, mock_browser, mock... class TestTabRequestIntegration (line 130) | class TestTabRequestIntegration: method test_request_uses_tab_network_events (line 134) | async def test_request_uses_tab_network_events(self, tab): method test_request_enables_network_events_when_needed (line 182) | async def test_request_enables_network_events_when_needed(self, tab): method test_request_clears_callbacks_after_completion (line 227) | async def test_request_clears_callbacks_after_completion(self, tab): method test_request_clears_callbacks_on_error (line 270) | async def test_request_clears_callbacks_on_error(self, tab): method test_request_http_methods_integration (line 292) | async def test_request_http_methods_integration(self, tab): method test_request_property_singleton_behavior (line 356) | def test_request_property_singleton_behavior(self, tab): method test_tab_request_maintains_state (line 368) | async def test_tab_request_maintains_state(self, tab): class TestTabRequestEdgeCases (line 387) | class TestTabRequestEdgeCases: method test_request_property_after_tab_reuse (line 390) | def test_request_property_after_tab_reuse(self, mock_browser, mock_con... method test_request_property_memory_efficiency (line 419) | async def test_request_property_memory_efficiency(self, tab): method test_request_property_with_different_tab_states (line 437) | def test_request_property_with_different_tab_states(self, mock_browser... FILE: tests/test_click_nested_integration.py class TestClickRegularElement (line 14) | class TestClickRegularElement: method test_click_regular_button (line 18) | async def test_click_regular_button(self, ci_chrome_options): method test_click_regular_button_multiple_times (line 37) | async def test_click_regular_button_multiple_times(self, ci_chrome_opt... class TestClickInShadowRoot (line 54) | class TestClickInShadowRoot: method test_click_button_in_shadow_root (line 58) | async def test_click_button_in_shadow_root(self, ci_chrome_options): method test_find_text_in_shadow_root (line 80) | async def test_find_text_in_shadow_root(self, ci_chrome_options): class TestClickInNestedShadowRoots (line 95) | class TestClickInNestedShadowRoots: method test_click_button_in_nested_shadow (line 99) | async def test_click_button_in_nested_shadow(self, ci_chrome_options): method test_find_text_in_nested_shadow (line 124) | async def test_find_text_in_nested_shadow(self, ci_chrome_options): class TestClickInIframe (line 143) | class TestClickInIframe: method test_click_button_in_iframe (line 147) | async def test_click_button_in_iframe(self, ci_chrome_options): class TestClickInShadowRootInsideIframe (line 169) | class TestClickInShadowRootInsideIframe: method test_click_shadow_button_inside_iframe (line 173) | async def test_click_shadow_button_inside_iframe(self, ci_chrome_optio... method test_find_text_in_shadow_inside_iframe (line 196) | async def test_find_text_in_shadow_inside_iframe(self, ci_chrome_optio... FILE: tests/test_commands/test_browser_commands.py function test_get_version (line 14) | def test_get_version(): function test_reset_permissions_without_context (line 22) | def test_reset_permissions_without_context(): function test_reset_permissions_with_context (line 30) | def test_reset_permissions_with_context(): function test_cancel_download_minimal (line 39) | def test_cancel_download_minimal(): function test_cancel_download_with_context (line 49) | def test_cancel_download_with_context(): function test_crash (line 63) | def test_crash(): function test_crash_gpu_process (line 71) | def test_crash_gpu_process(): function test_set_download_behavior_minimal (line 79) | def test_set_download_behavior_minimal(): function test_set_download_behavior_with_path (line 94) | def test_set_download_behavior_with_path(): function test_set_download_behavior_full_params (line 110) | def test_set_download_behavior_full_params(): function test_set_download_behavior_default_behavior (line 130) | def test_set_download_behavior_default_behavior(): function test_close (line 139) | def test_close(): function test_get_window_for_target (line 147) | def test_get_window_for_target(): function test_set_window_bounds (line 156) | def test_set_window_bounds(): function test_set_window_bounds_minimal (line 173) | def test_set_window_bounds_minimal(): function test_set_window_maximized (line 184) | def test_set_window_maximized(): function test_set_window_minimized (line 194) | def test_set_window_minimized(): function test_grant_permissions_minimal (line 203) | def test_grant_permissions_minimal(): function test_grant_permissions_with_origin (line 214) | def test_grant_permissions_with_origin(): function test_grant_permissions_full_params (line 229) | def test_grant_permissions_full_params(): function test_grant_permissions_single_permission (line 247) | def test_grant_permissions_single_permission(): function test_grant_permissions_multiple_permissions (line 256) | def test_grant_permissions_multiple_permissions(): function test_grant_permissions_empty_list (line 269) | def test_grant_permissions_empty_list(): function test_window_bounds_with_all_states (line 280) | def test_window_bounds_with_all_states(): function test_download_behaviors (line 300) | def test_download_behaviors(): function test_events_enabled_variations (line 315) | def test_events_enabled_variations(): function test_various_permission_types (line 328) | def test_various_permission_types(): function test_get_browser_command_line (line 349) | def test_get_browser_command_line(): function test_get_histograms_minimal (line 357) | def test_get_histograms_minimal(): function test_get_histograms_with_query (line 365) | def test_get_histograms_with_query(): function test_get_histograms_with_delta (line 375) | def test_get_histograms_with_delta(): function test_get_histograms_with_all_params (line 384) | def test_get_histograms_with_all_params(): function test_get_histogram_minimal (line 395) | def test_get_histogram_minimal(): function test_get_histogram_with_delta (line 405) | def test_get_histogram_with_delta(): function test_get_window_bounds (line 416) | def test_get_window_bounds(): function test_set_contents_size_with_width_only (line 425) | def test_set_contents_size_with_width_only(): function test_set_contents_size_with_height_only (line 437) | def test_set_contents_size_with_height_only(): function test_set_contents_size_with_both_dimensions (line 449) | def test_set_contents_size_with_both_dimensions(): function test_set_dock_tile_minimal (line 466) | def test_set_dock_tile_minimal(): function test_set_dock_tile_with_badge_label (line 474) | def test_set_dock_tile_with_badge_label(): function test_set_dock_tile_with_image (line 484) | def test_set_dock_tile_with_image(): function test_set_dock_tile_with_all_params (line 494) | def test_set_dock_tile_with_all_params(): function test_execute_browser_command (line 505) | def test_execute_browser_command(): function test_add_privacy_sandbox_enrollment_override (line 514) | def test_add_privacy_sandbox_enrollment_override(): function test_add_privacy_sandbox_coordinator_key_config_minimal (line 523) | def test_add_privacy_sandbox_coordinator_key_config_minimal(): function test_add_privacy_sandbox_coordinator_key_config_with_context (line 542) | def test_add_privacy_sandbox_coordinator_key_config_with_context(): function test_set_permission_minimal (line 563) | def test_set_permission_minimal(): function test_set_permission_with_origin (line 580) | def test_set_permission_with_origin(): function test_set_permission_with_all_params (line 599) | def test_set_permission_with_all_params(): function test_set_window_fullscreen (line 620) | def test_set_window_fullscreen(): function test_set_window_normal (line 630) | def test_set_window_normal(): function test_all_window_state_helpers (line 642) | def test_all_window_state_helpers(): function test_privacy_sandbox_apis (line 664) | def test_privacy_sandbox_apis(): function test_permission_settings_variations (line 686) | def test_permission_settings_variations(): function test_browser_command_ids (line 703) | def test_browser_command_ids(): FILE: tests/test_commands/test_dom_commands.py class TestDomCommands (line 5) | class TestDomCommands: method test_describe_node_with_node_id (line 8) | def test_describe_node_with_node_id(self): method test_describe_node_with_backend_node_id (line 15) | def test_describe_node_with_backend_node_id(self): method test_describe_node_with_object_id (line 22) | def test_describe_node_with_object_id(self): method test_describe_node_with_all_params (line 29) | def test_describe_node_with_all_params(self): method test_disable (line 46) | def test_disable(self): method test_enable_without_params (line 53) | def test_enable_without_params(self): method test_enable_with_include_whitespace (line 60) | def test_enable_with_include_whitespace(self): method test_focus_with_node_id (line 67) | def test_focus_with_node_id(self): method test_focus_with_backend_node_id (line 74) | def test_focus_with_backend_node_id(self): method test_focus_with_object_id (line 81) | def test_focus_with_object_id(self): method test_get_attributes (line 88) | def test_get_attributes(self): method test_get_box_model_with_node_id (line 95) | def test_get_box_model_with_node_id(self): method test_get_box_model_with_backend_node_id (line 102) | def test_get_box_model_with_backend_node_id(self): method test_get_box_model_with_object_id (line 109) | def test_get_box_model_with_object_id(self): method test_get_document_without_params (line 116) | def test_get_document_without_params(self): method test_get_document_with_depth (line 123) | def test_get_document_with_depth(self): method test_get_document_with_pierce (line 130) | def test_get_document_with_pierce(self): method test_get_node_for_location (line 137) | def test_get_node_for_location(self): method test_get_node_for_location_with_optional_params (line 145) | def test_get_node_for_location_with_optional_params(self): method test_get_outer_html_with_node_id (line 160) | def test_get_outer_html_with_node_id(self): method test_get_outer_html_with_backend_node_id (line 167) | def test_get_outer_html_with_backend_node_id(self): method test_get_outer_html_with_object_id (line 174) | def test_get_outer_html_with_object_id(self): method test_hide_highlight (line 181) | def test_hide_highlight(self): method test_highlight_node (line 188) | def test_highlight_node(self): method test_highlight_rect (line 195) | def test_highlight_rect(self): method test_move_to (line 202) | def test_move_to(self): method test_move_to_with_insert_before (line 210) | def test_move_to_with_insert_before(self): method test_query_selector (line 223) | def test_query_selector(self): method test_query_selector_all (line 231) | def test_query_selector_all(self): method test_remove_attribute (line 239) | def test_remove_attribute(self): method test_remove_node (line 247) | def test_remove_node(self): method test_request_child_nodes (line 254) | def test_request_child_nodes(self): method test_request_child_nodes_with_depth (line 261) | def test_request_child_nodes_with_depth(self): method test_request_child_nodes_with_pierce (line 269) | def test_request_child_nodes_with_pierce(self): method test_request_node (line 277) | def test_request_node(self): method test_resolve_node_with_node_id (line 284) | def test_resolve_node_with_node_id(self): method test_resolve_node_with_backend_node_id (line 291) | def test_resolve_node_with_backend_node_id(self): method test_resolve_node_with_all_params (line 298) | def test_resolve_node_with_all_params(self): method test_scroll_into_view_if_needed_with_node_id (line 313) | def test_scroll_into_view_if_needed_with_node_id(self): method test_scroll_into_view_if_needed_with_backend_node_id (line 320) | def test_scroll_into_view_if_needed_with_backend_node_id(self): method test_scroll_into_view_if_needed_with_object_id (line 327) | def test_scroll_into_view_if_needed_with_object_id(self): method test_set_attributes_as_text (line 334) | def test_set_attributes_as_text(self): method test_set_attributes_as_text_with_name (line 342) | def test_set_attributes_as_text_with_name(self): method test_set_attribute_value (line 355) | def test_set_attribute_value(self): method test_set_file_input_files_with_node_id (line 368) | def test_set_file_input_files_with_node_id(self): method test_set_file_input_files_with_backend_node_id (line 377) | def test_set_file_input_files_with_backend_node_id(self): method test_set_file_input_files_with_object_id (line 386) | def test_set_file_input_files_with_object_id(self): method test_set_node_name (line 395) | def test_set_node_name(self): method test_set_node_value (line 403) | def test_set_node_value(self): method test_set_outer_html (line 411) | def test_set_outer_html(self): method test_collect_class_names_from_subtree (line 420) | def test_collect_class_names_from_subtree(self): method test_copy_to (line 427) | def test_copy_to(self): method test_copy_to_with_insert_before (line 435) | def test_copy_to_with_insert_before(self): method test_discard_search_results (line 448) | def test_discard_search_results(self): method test_get_anchor_element (line 455) | def test_get_anchor_element(self): method test_get_anchor_element_with_specifier (line 462) | def test_get_anchor_element_with_specifier(self): method test_get_container_for_node (line 473) | def test_get_container_for_node(self): method test_get_container_for_node_with_all_params (line 480) | def test_get_container_for_node_with_all_params(self): method test_get_content_quads_with_node_id (line 497) | def test_get_content_quads_with_node_id(self): method test_get_content_quads_with_backend_node_id (line 504) | def test_get_content_quads_with_backend_node_id(self): method test_get_content_quads_with_object_id (line 511) | def test_get_content_quads_with_object_id(self): method test_get_detached_dom_nodes (line 518) | def test_get_detached_dom_nodes(self): method test_get_element_by_relation (line 525) | def test_get_element_by_relation(self): method test_get_file_info (line 536) | def test_get_file_info(self): method test_get_frame_owner (line 543) | def test_get_frame_owner(self): method test_get_nodes_for_subtree_by_style (line 550) | def test_get_nodes_for_subtree_by_style(self): method test_get_nodes_for_subtree_by_style_with_pierce (line 562) | def test_get_nodes_for_subtree_by_style_with_pierce(self): method test_get_node_stack_traces (line 576) | def test_get_node_stack_traces(self): method test_get_querying_descendants_for_container (line 583) | def test_get_querying_descendants_for_container(self): method test_get_relayout_boundary (line 590) | def test_get_relayout_boundary(self): method test_get_search_results (line 597) | def test_get_search_results(self): method test_get_top_layer_elements (line 610) | def test_get_top_layer_elements(self): method test_mark_undoable_state (line 617) | def test_mark_undoable_state(self): method test_perform_search (line 624) | def test_perform_search(self): method test_perform_search_with_shadow_dom (line 631) | def test_perform_search_with_shadow_dom(self): method test_push_node_by_path_to_frontend (line 642) | def test_push_node_by_path_to_frontend(self): method test_push_nodes_by_backend_ids_to_frontend (line 649) | def test_push_nodes_by_backend_ids_to_frontend(self): method test_redo (line 659) | def test_redo(self): method test_set_inspected_node (line 666) | def test_set_inspected_node(self): method test_set_node_stack_traces_enabled (line 673) | def test_set_node_stack_traces_enabled(self): method test_undo (line 680) | def test_undo(self): FILE: tests/test_commands/test_emulation_commands.py function test_set_user_agent_override_minimal (line 13) | def test_set_user_agent_override_minimal(): function test_set_user_agent_override_with_accept_language (line 23) | def test_set_user_agent_override_with_accept_language(): function test_set_user_agent_override_with_platform (line 33) | def test_set_user_agent_override_with_platform(): function test_set_user_agent_override_with_metadata (line 43) | def test_set_user_agent_override_with_metadata(): function test_set_user_agent_override_with_all_params (line 78) | def test_set_user_agent_override_with_all_params(): function test_set_user_agent_override_none_params_excluded (line 102) | def test_set_user_agent_override_none_params_excluded(): FILE: tests/test_commands/test_fetch_commands.py class TestFetchCommands (line 8) | class TestFetchCommands: method test_continue_request_minimal (line 11) | def test_continue_request_minimal(self): method test_continue_request_with_url (line 19) | def test_continue_request_with_url(self): method test_continue_request_with_method (line 29) | def test_continue_request_with_method(self): method test_continue_request_with_post_data (line 39) | def test_continue_request_with_post_data(self): method test_continue_request_with_headers (line 49) | def test_continue_request_with_headers(self): method test_continue_request_with_intercept_response (line 59) | def test_continue_request_with_intercept_response(self): method test_continue_request_with_all_params (line 72) | def test_continue_request_with_all_params(self): method test_continue_request_with_auth_minimal (line 98) | def test_continue_request_with_auth_minimal(self): method test_continue_request_with_auth_credentials (line 111) | def test_continue_request_with_auth_credentials(self): method test_continue_request_with_auth_cancel (line 131) | def test_continue_request_with_auth_cancel(self): method test_disable (line 145) | def test_disable(self): method test_enable_minimal (line 152) | def test_enable_minimal(self): method test_enable_with_url_pattern (line 161) | def test_enable_with_url_pattern(self): method test_enable_with_resource_type (line 174) | def test_enable_with_resource_type(self): method test_enable_with_request_stage (line 187) | def test_enable_with_request_stage(self): method test_enable_with_all_params (line 200) | def test_enable_with_all_params(self): method test_fail_request (line 220) | def test_fail_request(self): method test_fail_request_with_different_error (line 233) | def test_fail_request_with_different_error(self): method test_fulfill_request_minimal (line 246) | def test_fulfill_request_minimal(self): method test_fulfill_request_with_headers (line 259) | def test_fulfill_request_with_headers(self): method test_fulfill_request_with_body (line 275) | def test_fulfill_request_with_body(self): method test_fulfill_request_with_response_phrase (line 291) | def test_fulfill_request_with_response_phrase(self): method test_fulfill_request_with_all_params (line 307) | def test_fulfill_request_with_all_params(self): method test_get_response_body (line 330) | def test_get_response_body(self): method test_continue_response_minimal (line 338) | def test_continue_response_minimal(self): method test_continue_response_with_code (line 346) | def test_continue_response_with_code(self): method test_continue_response_with_headers (line 359) | def test_continue_response_with_headers(self): method test_continue_response_with_phrase (line 372) | def test_continue_response_with_phrase(self): method test_continue_response_with_all_params (line 385) | def test_continue_response_with_all_params(self): method test_take_response_body_as_stream (line 405) | def test_take_response_body_as_stream(self): FILE: tests/test_commands/test_input_commands.py function test_cancel_dragging (line 23) | def test_cancel_dragging(): function test_dispatch_key_event_minimal (line 33) | def test_dispatch_key_event_minimal(): function test_dispatch_key_event_with_modifiers (line 46) | def test_dispatch_key_event_with_modifiers(): function test_dispatch_key_event_with_all_params (line 59) | def test_dispatch_key_event_with_all_params(): function test_dispatch_mouse_event_minimal (line 96) | def test_dispatch_mouse_event_minimal(): function test_dispatch_mouse_event_with_button (line 109) | def test_dispatch_mouse_event_with_button(): function test_dispatch_mouse_event_with_all_params (line 126) | def test_dispatch_mouse_event_with_all_params(): function test_dispatch_touch_event_minimal (line 163) | def test_dispatch_touch_event_minimal(): function test_dispatch_touch_event_with_touch_points (line 173) | def test_dispatch_touch_event_with_touch_points(): function test_set_ignore_input_events (line 198) | def test_set_ignore_input_events(): function test_dispatch_drag_event_minimal (line 205) | def test_dispatch_drag_event_minimal(): function test_dispatch_drag_event_with_data (line 219) | def test_dispatch_drag_event_with_data(): function test_emulate_touch_from_mouse_event_minimal (line 245) | def test_emulate_touch_from_mouse_event_minimal(): function test_emulate_touch_from_mouse_event_with_all_params (line 260) | def test_emulate_touch_from_mouse_event_with_all_params(): function test_ime_set_composition (line 285) | def test_ime_set_composition(): function test_ime_set_composition_with_replacement (line 298) | def test_ime_set_composition_with_replacement(): function test_insert_text (line 315) | def test_insert_text(): function test_set_intercept_drags_enabled (line 322) | def test_set_intercept_drags_enabled(): function test_set_intercept_drags_disabled (line 329) | def test_set_intercept_drags_disabled(): function test_synthesize_pinch_gesture_minimal (line 336) | def test_synthesize_pinch_gesture_minimal(): function test_synthesize_pinch_gesture_with_all_params (line 349) | def test_synthesize_pinch_gesture_with_all_params(): function test_synthesize_scroll_gesture_minimal (line 366) | def test_synthesize_scroll_gesture_minimal(): function test_synthesize_scroll_gesture_with_distance (line 377) | def test_synthesize_scroll_gesture_with_distance(): function test_synthesize_scroll_gesture_with_all_params (line 392) | def test_synthesize_scroll_gesture_with_all_params(): function test_synthesize_tap_gesture_minimal (line 423) | def test_synthesize_tap_gesture_minimal(): function test_synthesize_tap_gesture_with_all_params (line 434) | def test_synthesize_tap_gesture_with_all_params(): function test_mouse_wheel_event (line 451) | def test_mouse_wheel_event(): function test_key_event_with_location (line 468) | def test_key_event_with_location(): function test_touch_event_multiple_points (line 481) | def test_touch_event_multiple_points(): function test_drag_event_cancel (line 511) | def test_drag_event_cancel(): FILE: tests/test_commands/test_network_commands.py function test_clear_browser_cache (line 13) | def test_clear_browser_cache(): function test_clear_browser_cookies (line 20) | def test_clear_browser_cookies(): function test_delete_cookies_minimal (line 27) | def test_delete_cookies_minimal(): function test_delete_cookies_with_url (line 34) | def test_delete_cookies_with_url(): function test_delete_cookies_with_all_params (line 45) | def test_delete_cookies_with_all_params(): function test_disable (line 66) | def test_disable(): function test_enable_minimal (line 73) | def test_enable_minimal(): function test_enable_with_buffer_sizes (line 80) | def test_enable_with_buffer_sizes(): function test_get_cookies_minimal (line 93) | def test_get_cookies_minimal(): function test_get_cookies_with_urls (line 100) | def test_get_cookies_with_urls(): function test_get_request_post_data (line 108) | def test_get_request_post_data(): function test_get_response_body (line 115) | def test_get_response_body(): function test_set_cache_disabled_true (line 122) | def test_set_cache_disabled_true(): function test_set_cache_disabled_false (line 129) | def test_set_cache_disabled_false(): function test_set_cookie_minimal (line 136) | def test_set_cookie_minimal(): function test_set_cookie_with_url (line 144) | def test_set_cookie_with_url(): function test_set_cookie_with_all_params (line 157) | def test_set_cookie_with_all_params(): function test_set_cookies (line 196) | def test_set_cookies(): function test_set_extra_http_headers (line 215) | def test_set_extra_http_headers(): function test_set_useragent_override_minimal (line 226) | def test_set_useragent_override_minimal(): function test_set_useragent_override_with_all_params (line 234) | def test_set_useragent_override_with_all_params(): function test_clear_accepted_encodings_override (line 263) | def test_clear_accepted_encodings_override(): function test_enable_reporting_api (line 270) | def test_enable_reporting_api(): function test_search_in_response_body_minimal (line 277) | def test_search_in_response_body_minimal(): function test_search_in_response_body_with_options (line 290) | def test_search_in_response_body_with_options(): function test_set_blocked_urls (line 305) | def test_set_blocked_urls(): function test_set_bypass_service_worker (line 313) | def test_set_bypass_service_worker(): function test_get_certificate (line 320) | def test_get_certificate(): function test_get_response_body_for_interception (line 327) | def test_get_response_body_for_interception(): function test_set_accepted_encodings (line 336) | def test_set_accepted_encodings(): function test_set_attach_debug_stack (line 344) | def test_set_attach_debug_stack(): function test_set_cookie_controls_minimal (line 351) | def test_set_cookie_controls_minimal(): function test_set_cookie_controls_with_all_params (line 360) | def test_set_cookie_controls_with_all_params(): function test_stream_resource_content (line 373) | def test_stream_resource_content(): function test_take_response_body_for_interception_as_stream (line 380) | def test_take_response_body_for_interception_as_stream(): function test_emulate_network_conditions_minimal (line 389) | def test_emulate_network_conditions_minimal(): function test_emulate_network_conditions_with_all_params (line 404) | def test_emulate_network_conditions_with_all_params(): function test_get_security_isolation_status_minimal (line 427) | def test_get_security_isolation_status_minimal(): function test_get_security_isolation_status_with_frame_id (line 434) | def test_get_security_isolation_status_with_frame_id(): function test_load_network_resource (line 441) | def test_load_network_resource(): function test_load_network_resource_with_frame_id (line 456) | def test_load_network_resource_with_frame_id(): function test_replay_xhr (line 473) | def test_replay_xhr(): FILE: tests/test_commands/test_page_commands.py function test_add_script_to_evaluate_on_new_document_minimal (line 20) | def test_add_script_to_evaluate_on_new_document_minimal(): function test_add_script_to_evaluate_on_new_document_with_all_params (line 29) | def test_add_script_to_evaluate_on_new_document_with_all_params(): function test_bring_to_front (line 44) | def test_bring_to_front(): function test_capture_screenshot_minimal (line 51) | def test_capture_screenshot_minimal(): function test_capture_screenshot_with_format_and_quality (line 58) | def test_capture_screenshot_with_format_and_quality(): function test_capture_screenshot_with_clip (line 69) | def test_capture_screenshot_with_clip(): function test_capture_screenshot_with_all_params (line 87) | def test_capture_screenshot_with_all_params(): function test_close (line 113) | def test_close(): function test_create_isolated_world_minimal (line 120) | def test_create_isolated_world_minimal(): function test_create_isolated_world_with_all_params (line 127) | def test_create_isolated_world_with_all_params(): function test_disable (line 140) | def test_disable(): function test_enable_minimal (line 147) | def test_enable_minimal(): function test_enable_with_file_chooser (line 154) | def test_enable_with_file_chooser(): function test_get_app_manifest_minimal (line 161) | def test_get_app_manifest_minimal(): function test_get_app_manifest_with_id (line 168) | def test_get_app_manifest_with_id(): function test_get_frame_tree (line 175) | def test_get_frame_tree(): function test_get_layout_metrics (line 182) | def test_get_layout_metrics(): function test_get_navigation_history (line 189) | def test_get_navigation_history(): function test_handle_javascript_dialog_accept (line 196) | def test_handle_javascript_dialog_accept(): function test_handle_javascript_dialog_with_prompt (line 203) | def test_handle_javascript_dialog_with_prompt(): function test_navigate_minimal (line 214) | def test_navigate_minimal(): function test_navigate_with_all_params (line 221) | def test_navigate_with_all_params(): function test_navigate_to_history_entry (line 238) | def test_navigate_to_history_entry(): function test_print_to_pdf_minimal (line 245) | def test_print_to_pdf_minimal(): function test_print_to_pdf_with_basic_params (line 252) | def test_print_to_pdf_with_basic_params(): function test_print_to_pdf_with_all_params (line 267) | def test_print_to_pdf_with_all_params(): function test_reload_minimal (line 308) | def test_reload_minimal(): function test_reload_with_all_params (line 315) | def test_reload_with_all_params(): function test_reset_navigation_history (line 328) | def test_reset_navigation_history(): function test_remove_script_to_evaluate_on_new_document (line 335) | def test_remove_script_to_evaluate_on_new_document(): function test_set_bypass_csp (line 344) | def test_set_bypass_csp(): function test_set_document_content (line 351) | def test_set_document_content(): function test_set_intercept_file_chooser_dialog (line 362) | def test_set_intercept_file_chooser_dialog(): function test_set_lifecycle_events_enabled (line 369) | def test_set_lifecycle_events_enabled(): function test_stop_loading (line 376) | def test_stop_loading(): function test_add_compilation_cache (line 383) | def test_add_compilation_cache(): function test_capture_snapshot (line 394) | def test_capture_snapshot(): function test_clear_compilation_cache (line 401) | def test_clear_compilation_cache(): function test_crash (line 408) | def test_crash(): function test_generate_test_report_minimal (line 415) | def test_generate_test_report_minimal(): function test_generate_test_report_with_group (line 422) | def test_generate_test_report_with_group(): function test_get_ad_script_ancestry_ids (line 433) | def test_get_ad_script_ancestry_ids(): function test_get_app_id_minimal (line 440) | def test_get_app_id_minimal(): function test_get_app_id_with_params (line 447) | def test_get_app_id_with_params(): function test_get_installability_errors (line 458) | def test_get_installability_errors(): function test_get_origin_trials (line 465) | def test_get_origin_trials(): function test_get_permissions_policy_state (line 472) | def test_get_permissions_policy_state(): function test_get_resource_content (line 479) | def test_get_resource_content(): function test_get_resource_tree (line 490) | def test_get_resource_tree(): function test_produce_compilation_cache (line 497) | def test_produce_compilation_cache(): function test_screencast_frame_ack (line 508) | def test_screencast_frame_ack(): function test_search_in_resource_minimal (line 515) | def test_search_in_resource_minimal(): function test_search_in_resource_with_options (line 528) | def test_search_in_resource_with_options(): function test_set_ad_blocking_enabled (line 545) | def test_set_ad_blocking_enabled(): function test_set_font_families (line 552) | def test_set_font_families(): function test_set_font_sizes (line 574) | def test_set_font_sizes(): function test_set_prerendering_allowed (line 585) | def test_set_prerendering_allowed(): function test_set_rph_registration_mode (line 592) | def test_set_rph_registration_mode(): function test_set_spc_transaction_mode (line 600) | def test_set_spc_transaction_mode(): function test_set_web_lifecycle_state (line 608) | def test_set_web_lifecycle_state(): function test_start_screencast_minimal (line 615) | def test_start_screencast_minimal(): function test_start_screencast_with_all_params (line 622) | def test_start_screencast_with_all_params(): function test_stop_screencast (line 639) | def test_stop_screencast(): function test_wait_for_debugger (line 646) | def test_wait_for_debugger(): FILE: tests/test_commands/test_runtime_commands.py function test_add_binding_minimal (line 12) | def test_add_binding_minimal(): function test_add_binding_with_context (line 19) | def test_add_binding_with_context(): function test_await_promise_minimal (line 30) | def test_await_promise_minimal(): function test_await_promise_with_all_params (line 37) | def test_await_promise_with_all_params(): function test_call_function_on_minimal (line 50) | def test_call_function_on_minimal(): function test_call_function_on_with_object_id (line 59) | def test_call_function_on_with_object_id(): function test_call_function_on_with_all_params (line 70) | def test_call_function_on_with_all_params(): function test_compile_script_minimal (line 111) | def test_compile_script_minimal(): function test_compile_script_with_all_params (line 119) | def test_compile_script_with_all_params(): function test_disable (line 134) | def test_disable(): function test_enable (line 141) | def test_enable(): function test_evaluate_minimal (line 148) | def test_evaluate_minimal(): function test_evaluate_with_basic_params (line 155) | def test_evaluate_with_basic_params(): function test_evaluate_with_all_params (line 168) | def test_evaluate_with_all_params(): function test_get_properties_minimal (line 211) | def test_get_properties_minimal(): function test_get_properties_with_all_params (line 218) | def test_get_properties_with_all_params(): function test_global_lexical_scope_names_minimal (line 235) | def test_global_lexical_scope_names_minimal(): function test_global_lexical_scope_names_with_context (line 242) | def test_global_lexical_scope_names_with_context(): function test_query_objects_minimal (line 251) | def test_query_objects_minimal(): function test_query_objects_with_group (line 258) | def test_query_objects_with_group(): function test_release_object (line 269) | def test_release_object(): function test_release_object_group (line 276) | def test_release_object_group(): function test_remove_binding (line 283) | def test_remove_binding(): function test_run_script_minimal (line 290) | def test_run_script_minimal(): function test_run_script_with_all_params (line 297) | def test_run_script_with_all_params(): function test_set_async_call_stack_depth (line 320) | def test_set_async_call_stack_depth(): function test_set_custom_object_formatter_enabled (line 327) | def test_set_custom_object_formatter_enabled(): function test_set_max_call_stack_size_to_capture (line 334) | def test_set_max_call_stack_size_to_capture(): function test_evaluate_simple_expression (line 341) | def test_evaluate_simple_expression(): function test_call_function_on_with_arguments (line 348) | def test_call_function_on_with_arguments(): function test_get_properties_own_only (line 367) | def test_get_properties_own_only(): function test_evaluate_with_context (line 380) | def test_evaluate_with_context(): function test_compile_script_with_source_url (line 393) | def test_compile_script_with_source_url(): FILE: tests/test_commands/test_storage_commands.py function test_clear_cookies_minimal (line 12) | def test_clear_cookies_minimal(): function test_clear_cookies_with_context (line 19) | def test_clear_cookies_with_context(): function test_clear_data_for_origin (line 26) | def test_clear_data_for_origin(): function test_clear_data_for_storage_key (line 37) | def test_clear_data_for_storage_key(): function test_get_cookies_minimal (line 48) | def test_get_cookies_minimal(): function test_get_cookies_with_context (line 55) | def test_get_cookies_with_context(): function test_get_storage_key_for_frame (line 62) | def test_get_storage_key_for_frame(): function test_get_usage_and_quota (line 69) | def test_get_usage_and_quota(): function test_set_cookies_minimal (line 76) | def test_set_cookies_minimal(): function test_set_cookies_with_context (line 87) | def test_set_cookies_with_context(): function test_set_protected_audience_k_anonymity (line 99) | def test_set_protected_audience_k_anonymity(): function test_track_cache_storage_for_origin (line 113) | def test_track_cache_storage_for_origin(): function test_track_cache_storage_for_storage_key (line 120) | def test_track_cache_storage_for_storage_key(): function test_track_indexed_db_for_origin (line 127) | def test_track_indexed_db_for_origin(): function test_track_indexed_db_for_storage_key (line 134) | def test_track_indexed_db_for_storage_key(): function test_untrack_cache_storage_for_origin (line 141) | def test_untrack_cache_storage_for_origin(): function test_untrack_cache_storage_for_storage_key (line 148) | def test_untrack_cache_storage_for_storage_key(): function test_untrack_indexed_db_for_origin (line 155) | def test_untrack_indexed_db_for_origin(): function test_untrack_indexed_db_for_storage_key (line 162) | def test_untrack_indexed_db_for_storage_key(): function test_clear_shared_storage_entries (line 169) | def test_clear_shared_storage_entries(): function test_clear_trust_tokens (line 176) | def test_clear_trust_tokens(): function test_delete_shared_storage_entry (line 183) | def test_delete_shared_storage_entry(): function test_delete_storage_bucket (line 194) | def test_delete_storage_bucket(): function test_get_affected_urls_for_third_party_cookie_metadata (line 205) | def test_get_affected_urls_for_third_party_cookie_metadata(): function test_get_interest_group_details (line 217) | def test_get_interest_group_details(): function test_get_related_website_sets (line 228) | def test_get_related_website_sets(): function test_get_shared_storage_entries (line 234) | def test_get_shared_storage_entries(): function test_get_shared_storage_metadata (line 241) | def test_get_shared_storage_metadata(): function test_get_trust_tokens (line 248) | def test_get_trust_tokens(): function test_override_quota_for_origin_minimal (line 255) | def test_override_quota_for_origin_minimal(): function test_override_quota_for_origin_with_size (line 262) | def test_override_quota_for_origin_with_size(): function test_reset_shared_storage_budget (line 273) | def test_reset_shared_storage_budget(): function test_run_bounce_tracking_mitigations (line 280) | def test_run_bounce_tracking_mitigations(): function test_send_pending_attribution_reports (line 287) | def test_send_pending_attribution_reports(): function test_set_attribution_reporting_local_testing_mode (line 294) | def test_set_attribution_reporting_local_testing_mode(): function test_set_attribution_reporting_tracking (line 301) | def test_set_attribution_reporting_tracking(): function test_set_interest_group_auction_tracking (line 308) | def test_set_interest_group_auction_tracking(): function test_set_interest_group_tracking (line 315) | def test_set_interest_group_tracking(): function test_set_shared_storage_entry_minimal (line 322) | def test_set_shared_storage_entry_minimal(): function test_set_shared_storage_entry_with_ignore (line 335) | def test_set_shared_storage_entry_with_ignore(): function test_set_shared_storage_tracking (line 350) | def test_set_shared_storage_tracking(): function test_set_storage_bucket_tracking (line 357) | def test_set_storage_bucket_tracking(): function test_clear_data_for_origin_all_types (line 368) | def test_clear_data_for_origin_all_types(): function test_set_cookies_complex (line 379) | def test_set_cookies_complex(): FILE: tests/test_commands/test_target_commands.py function test_activate_target (line 13) | def test_activate_target(): function test_attach_to_target_minimal (line 20) | def test_attach_to_target_minimal(): function test_attach_to_target_with_flatten (line 27) | def test_attach_to_target_with_flatten(): function test_close_target (line 35) | def test_close_target(): function test_create_browser_context_minimal (line 42) | def test_create_browser_context_minimal(): function test_create_browser_context_with_all_params (line 49) | def test_create_browser_context_with_all_params(): function test_create_target_minimal (line 65) | def test_create_target_minimal(): function test_create_target_with_position_and_size (line 72) | def test_create_target_with_position_and_size(): function test_create_target_with_window_state (line 89) | def test_create_target_with_window_state(): function test_create_target_with_all_params (line 100) | def test_create_target_with_all_params(): function test_detach_from_target_minimal (line 131) | def test_detach_from_target_minimal(): function test_detach_from_target_with_session (line 138) | def test_detach_from_target_with_session(): function test_dispose_browser_context (line 145) | def test_dispose_browser_context(): function test_get_browser_contexts (line 152) | def test_get_browser_contexts(): function test_get_targets_minimal (line 159) | def test_get_targets_minimal(): function test_get_targets_with_filter (line 166) | def test_get_targets_with_filter(): function test_set_auto_attach_minimal (line 174) | def test_set_auto_attach_minimal(): function test_set_auto_attach_with_all_params (line 181) | def test_set_auto_attach_with_all_params(): function test_set_discover_targets_minimal (line 197) | def test_set_discover_targets_minimal(): function test_set_discover_targets_with_filter (line 204) | def test_set_discover_targets_with_filter(): function test_attach_to_browser_target (line 213) | def test_attach_to_browser_target(): function test_get_target_info (line 220) | def test_get_target_info(): function test_set_remote_locations (line 227) | def test_set_remote_locations(): function test_create_target_about_blank (line 244) | def test_create_target_about_blank(): function test_create_target_new_window (line 251) | def test_create_target_new_window(): function test_create_target_background (line 266) | def test_create_target_background(): function test_create_target_for_tab (line 277) | def test_create_target_for_tab(): function test_create_target_hidden (line 288) | def test_create_target_hidden(): function test_create_browser_context_with_proxy (line 299) | def test_create_browser_context_with_proxy(): function test_create_target_with_context (line 310) | def test_create_target_with_context(): function test_set_auto_attach_disabled (line 321) | def test_set_auto_attach_disabled(): FILE: tests/test_connection_handler.py function connection_handler (line 15) | async def connection_handler(): function connection_handler_closed (line 23) | async def connection_handler_closed(): function connection_handler_with_page_id (line 35) | async def connection_handler_with_page_id(): function test_resolve_ws_address_priority_ws_address_over_port_and_page (line 48) | async def test_resolve_ws_address_priority_ws_address_over_port_and_page(): function test_ping_success (line 62) | async def test_ping_success(connection_handler): function test_ping_failure (line 69) | async def test_ping_failure(connection_handler): function test_execute_command_success (line 78) | async def test_execute_command_success(connection_handler): function test_execute_command_timeout (line 93) | async def test_execute_command_timeout(connection_handler): function test_execute_command_connection_closed_exception (line 106) | async def test_execute_command_connection_closed_exception(connection_ha... function test_register_callback (line 123) | async def test_register_callback(connection_handler): function test_remove_callback (line 134) | async def test_remove_callback(connection_handler): function test_clear_callbacks (line 143) | async def test_clear_callbacks(connection_handler): function test_close (line 153) | async def test_close(connection_handler): function test_execute_command_connection_closed (line 168) | async def test_execute_command_connection_closed(connection_handler_clos... function test__is_command_response_true (line 192) | async def test__is_command_response_true(connection_handler): function test__is_command_response_false (line 199) | async def test__is_command_response_false(connection_handler): function test__resolve_ws_address_with_page_id (line 206) | async def test__resolve_ws_address_with_page_id( function test__incoming_messages (line 214) | async def test__incoming_messages(connection_handler): function test__process_single_message (line 224) | async def test__process_single_message(connection_handler): function test__process_single_message_invalid_command (line 234) | async def test__process_single_message_invalid_command(connection_handler): function test__process_single_message_event (line 241) | async def test__process_single_message_event(connection_handler): function test__process_single_message_event_with_callback (line 251) | async def test__process_single_message_event_with_callback(connection_ha... function test__receive_events_flow (line 260) | async def test__receive_events_flow(connection_handler): function test__receive_events_connection_closed (line 282) | async def test__receive_events_connection_closed(connection_handler): function test__receive_events_unexpected_exception (line 296) | async def test__receive_events_unexpected_exception(connection_handler): function test__aenter__ (line 312) | async def test__aenter__(connection_handler): function test__aexit__ (line 318) | async def test__aexit__(connection_handler): function test__repr__ (line 327) | def test__repr__(connection_handler): function test__str__ (line 332) | def test__str__(connection_handler): FILE: tests/test_core_integration.py class TestCoreFindQuery (line 12) | class TestCoreFindQuery: method test_find_by_common_selectors (line 16) | async def test_find_by_common_selectors(self, ci_chrome_options): method test_query_css_and_xpath (line 47) | async def test_query_css_and_xpath(self, ci_chrome_options): class TestCoreClickAndInput (line 75) | class TestCoreClickAndInput: method test_click_increments_counter (line 79) | async def test_click_increments_counter(self, ci_chrome_options): method test_insert_text_input_and_textarea (line 106) | async def test_insert_text_input_and_textarea(self, ci_chrome_options): method test_clear_input_and_textarea (line 128) | async def test_clear_input_and_textarea(self, ci_chrome_options): method test_select_option_click (line 164) | async def test_select_option_click(self, ci_chrome_options): class TestCoreTypeText (line 187) | class TestCoreTypeText: method test_type_text_into_input (line 191) | async def test_type_text_into_input(self, ci_chrome_options): method test_type_text_humanized_into_input (line 209) | async def test_type_text_humanized_into_input(self, ci_chrome_options): method test_type_text_symbols_and_punctuation (line 231) | async def test_type_text_symbols_and_punctuation(self, ci_chrome_optio... method test_type_text_all_character_groups (line 260) | async def test_type_text_all_character_groups(self, ci_chrome_options,... FILE: tests/test_decorators.py class TestRetryConfigInitialization (line 17) | class TestRetryConfigInitialization: method test_default_initialization (line 20) | def test_default_initialization(self): method test_custom_initialization (line 29) | def test_custom_initialization(self): class TestRetryConfigCalculateDelay (line 46) | class TestRetryConfigCalculateDelay: method test_no_delay (line 49) | def test_no_delay(self): method test_constant_delay (line 55) | def test_constant_delay(self): method test_exponential_backoff (line 62) | def test_exponential_backoff(self): class TestRetryConfigIsMatchingException (line 71) | class TestRetryConfigIsMatchingException: method test_single_exception_match (line 74) | def test_single_exception_match(self): method test_list_exception_match (line 80) | def test_list_exception_match(self): method test_parent_exception_match (line 87) | def test_parent_exception_match(self): class TestRetryConfigCallCallback (line 95) | class TestRetryConfigCallCallback: method test_no_callback (line 99) | async def test_no_callback(self): method test_callback_with_instance (line 106) | async def test_callback_with_instance(self): method test_callback_without_instance (line 117) | async def test_callback_without_instance(self): class TestRetryDecoratorBasic (line 132) | class TestRetryDecoratorBasic: method test_successful_execution_no_retry (line 136) | async def test_successful_execution_no_retry(self): method test_retry_on_matching_exception (line 151) | async def test_retry_on_matching_exception(self): method test_no_retry_on_non_matching_exception (line 169) | async def test_no_retry_on_non_matching_exception(self): method test_exhaust_all_retries (line 185) | async def test_exhaust_all_retries(self): class TestRetryDecoratorWithMultipleExceptions (line 202) | class TestRetryDecoratorWithMultipleExceptions: method test_retry_on_any_listed_exception (line 206) | async def test_retry_on_any_listed_exception(self): class TestRetryDecoratorWithDelay (line 233) | class TestRetryDecoratorWithDelay: method test_constant_delay (line 237) | async def test_constant_delay(self): method test_exponential_backoff (line 258) | async def test_exponential_backoff(self): class TestRetryDecoratorWithCallback (line 290) | class TestRetryDecoratorWithCallback: method test_callback_called_on_retry (line 294) | async def test_callback_called_on_retry(self): method test_callback_receives_instance (line 325) | async def test_callback_receives_instance(self): class TestRetryDecoratorEdgeCases (line 358) | class TestRetryDecoratorEdgeCases: method test_zero_retries_succeeds (line 362) | async def test_zero_retries_succeeds(self): method test_zero_retries_fails_immediately (line 378) | async def test_zero_retries_fails_immediately(self): method test_one_retry_succeeds_on_second_attempt (line 395) | async def test_one_retry_succeeds_on_second_attempt(self): method test_exception_to_raise_parameter (line 413) | async def test_exception_to_raise_parameter(self): class TestRetryDecoratorWithClassMethods (line 438) | class TestRetryDecoratorWithClassMethods: method test_instance_method (line 442) | async def test_instance_method(self): method test_method_with_arguments (line 463) | async def test_method_with_arguments(self): method test_method_with_state_restoration (line 477) | async def test_method_with_state_restoration(self): class TestRetryConfigHandleDelay (line 509) | class TestRetryConfigHandleDelay: method test_handle_delay_no_delay (line 513) | async def test_handle_delay_no_delay(self): method test_handle_delay_with_delay (line 525) | async def test_handle_delay_with_delay(self): class TestRetryDecoratorRealWorldScenarios (line 537) | class TestRetryDecoratorRealWorldScenarios: method test_network_retry_scenario (line 541) | async def test_network_retry_scenario(self): method test_element_search_retry_scenario (line 577) | async def test_element_search_retry_scenario(self): FILE: tests/test_events.py function test_browser_events (line 12) | def test_browser_events(): function test_dom_events (line 18) | def test_dom_events(): function test_fetch_events (line 38) | def test_fetch_events(): function test_input_events (line 44) | def test_input_events(): function test_network_events (line 49) | def test_network_events(): function test_page_events (line 96) | def test_page_events(): function test_runtime_events (line 124) | def test_runtime_events(): function test_storage_events (line 136) | def test_storage_events(): function test_target_events (line 154) | def test_target_events(): function test_event_enums_integrity (line 165) | def test_event_enums_integrity(): function test_no_duplicate_events (line 198) | def test_no_duplicate_events(): function test_event_enum_completeness (line 214) | def test_event_enum_completeness(): function test_event_naming_convention (line 225) | def test_event_naming_convention(): FILE: tests/test_exceptions.py class TestBaseExceptions (line 60) | class TestBaseExceptions: method test_pydoll_exception_default_message (line 63) | def test_pydoll_exception_default_message(self): method test_pydoll_exception_custom_message (line 69) | def test_pydoll_exception_custom_message(self): method test_connection_exception_default (line 76) | def test_connection_exception_default(self): method test_connection_exception_custom (line 82) | def test_connection_exception_custom(self): method test_browser_exception_default (line 89) | def test_browser_exception_default(self): method test_protocol_exception_default (line 95) | def test_protocol_exception_default(self): method test_element_exception_default (line 101) | def test_element_exception_default(self): method test_timeout_exception_default (line 107) | def test_timeout_exception_default(self): method test_configuration_exception_default (line 113) | def test_configuration_exception_default(self): method test_dialog_exception_default (line 119) | def test_dialog_exception_default(self): class TestConnectionExceptions (line 126) | class TestConnectionExceptions: method test_connection_failed (line 129) | def test_connection_failed(self): method test_reconnection_failed (line 135) | def test_reconnection_failed(self): method test_websocket_connection_closed (line 141) | def test_websocket_connection_closed(self): method test_websocket_connection_closed_custom (line 147) | def test_websocket_connection_closed_custom(self): method test_network_error (line 154) | def test_network_error(self): class TestBrowserExceptions (line 161) | class TestBrowserExceptions: method test_browser_not_running (line 164) | def test_browser_not_running(self): method test_failed_to_start_browser (line 170) | def test_failed_to_start_browser(self): method test_failed_to_start_browser_custom (line 176) | def test_failed_to_start_browser_custom(self): method test_unsupported_os (line 183) | def test_unsupported_os(self): method test_unsupported_os_custom (line 189) | def test_unsupported_os_custom(self): method test_no_valid_tab_found (line 196) | def test_no_valid_tab_found(self): class TestProtocolExceptions (line 203) | class TestProtocolExceptions: method test_invalid_command (line 206) | def test_invalid_command(self): method test_invalid_response (line 212) | def test_invalid_response(self): method test_resend_command_failed (line 218) | def test_resend_command_failed(self): method test_command_execution_timeout (line 224) | def test_command_execution_timeout(self): method test_command_execution_timeout_custom (line 230) | def test_command_execution_timeout_custom(self): method test_invalid_callback (line 237) | def test_invalid_callback(self): method test_event_not_supported (line 243) | def test_event_not_supported(self): class TestElementExceptions (line 255) | class TestElementExceptions: method test_element_not_found (line 258) | def test_element_not_found(self): method test_element_not_found_custom (line 264) | def test_element_not_found_custom(self): method test_element_not_visible (line 271) | def test_element_not_visible(self): method test_element_not_interactable (line 277) | def test_element_not_interactable(self): method test_click_intercepted (line 283) | def test_click_intercepted(self): method test_click_intercepted_custom (line 289) | def test_click_intercepted_custom(self): method test_element_not_a_file_input (line 296) | def test_element_not_a_file_input(self): method test_element_not_a_file_input_custom (line 302) | def test_element_not_a_file_input_custom(self): class TestTimeoutExceptions (line 310) | class TestTimeoutExceptions: method test_page_load_timeout (line 313) | def test_page_load_timeout(self): method test_page_load_timeout_custom (line 319) | def test_page_load_timeout_custom(self): method test_wait_element_timeout (line 326) | def test_wait_element_timeout(self): method test_wait_element_timeout_custom (line 332) | def test_wait_element_timeout_custom(self): class TestConfigurationExceptions (line 340) | class TestConfigurationExceptions: method test_invalid_options_object (line 343) | def test_invalid_options_object(self): method test_invalid_options_object_custom (line 349) | def test_invalid_options_object_custom(self): method test_invalid_browser_path (line 356) | def test_invalid_browser_path(self): method test_invalid_browser_path_custom (line 362) | def test_invalid_browser_path_custom(self): method test_argument_already_exists_in_options (line 369) | def test_argument_already_exists_in_options(self): method test_argument_already_exists_custom (line 375) | def test_argument_already_exists_custom(self): method test_invalid_file_extension (line 382) | def test_invalid_file_extension(self): class TestDialogExceptions (line 389) | class TestDialogExceptions: method test_no_dialog_present (line 392) | def test_no_dialog_present(self): method test_no_dialog_present_custom (line 398) | def test_no_dialog_present_custom(self): class TestIFrameExceptions (line 406) | class TestIFrameExceptions: method test_not_an_iframe (line 409) | def test_not_an_iframe(self): method test_not_an_iframe_custom (line 415) | def test_not_an_iframe_custom(self): method test_invalid_iframe (line 422) | def test_invalid_iframe(self): method test_invalid_iframe_custom (line 428) | def test_invalid_iframe_custom(self): method test_iframe_not_found (line 435) | def test_iframe_not_found(self): method test_iframe_not_found_custom (line 441) | def test_iframe_not_found_custom(self): class TestExceptionInheritance (line 449) | class TestExceptionInheritance: method test_all_exceptions_inherit_from_pydoll_exception (line 452) | def test_all_exceptions_inherit_from_pydoll_exception(self): method test_base_exception_categories (line 468) | def test_base_exception_categories(self): method test_connection_exceptions_inherit_from_connection_exception (line 478) | def test_connection_exceptions_inherit_from_connection_exception(self): FILE: tests/test_find_elements_mixin.py class MockFindElementsMixin (line 11) | class MockFindElementsMixin(FindElementsMixin): method __init__ (line 14) | def __init__(self): class TestBuildXPath (line 20) | class TestBuildXPath: method test_build_xpath_single_id (line 23) | def test_build_xpath_single_id(self): method test_build_xpath_single_class_name (line 28) | def test_build_xpath_single_class_name(self): method test_build_xpath_single_name (line 34) | def test_build_xpath_single_name(self): method test_build_xpath_single_tag_name (line 39) | def test_build_xpath_single_tag_name(self): method test_build_xpath_single_text (line 44) | def test_build_xpath_single_text(self): method test_build_xpath_single_custom_attribute (line 49) | def test_build_xpath_single_custom_attribute(self): method test_build_xpath_id_and_class (line 54) | def test_build_xpath_id_and_class(self): method test_build_xpath_tag_and_attributes (line 60) | def test_build_xpath_tag_and_attributes(self): method test_build_xpath_all_parameters (line 71) | def test_build_xpath_all_parameters(self): method test_build_xpath_text_with_quotes (line 90) | def test_build_xpath_text_with_quotes(self): method test_build_xpath_attribute_with_quotes (line 95) | def test_build_xpath_attribute_with_quotes(self): method test_build_xpath_empty_values_ignored (line 100) | def test_build_xpath_empty_values_ignored(self): method test_build_xpath_class_name_with_spaces (line 110) | def test_build_xpath_class_name_with_spaces(self): method test_build_xpath_special_characters_in_attributes (line 116) | def test_build_xpath_special_characters_in_attributes(self): method test_build_xpath_numeric_attribute_values (line 125) | def test_build_xpath_numeric_attribute_values(self): method test_build_xpath_no_parameters (line 134) | def test_build_xpath_no_parameters(self): method test_build_xpath_only_tag_name (line 139) | def test_build_xpath_only_tag_name(self): method test_build_xpath_hyphenated_attributes (line 144) | def test_build_xpath_hyphenated_attributes(self): class TestGetExpressionType (line 153) | class TestGetExpressionType: method test_xpath_double_slash (line 156) | def test_xpath_double_slash(self): method test_xpath_dot_double_slash (line 160) | def test_xpath_dot_double_slash(self): method test_xpath_dot_slash (line 164) | def test_xpath_dot_slash(self): method test_xpath_single_slash (line 168) | def test_xpath_single_slash(self): method test_css_selector_default (line 172) | def test_css_selector_default(self): method test_css_selector_attribute (line 176) | def test_css_selector_attribute(self): method test_css_selector_pseudo_class (line 180) | def test_css_selector_pseudo_class(self): method test_css_selector_not_xpath (line 184) | def test_css_selector_not_xpath(self): method test_complex_xpath_expressions (line 189) | def test_complex_xpath_expressions(self): method test_edge_case_expressions (line 200) | def test_edge_case_expressions(self): method test_xpath_with_parentheses_and_predicate (line 205) | def test_xpath_with_parentheses_and_predicate(self): class TestEnsureRelativeXPath (line 216) | class TestEnsureRelativeXPath: method test_absolute_xpath_becomes_relative (line 219) | def test_absolute_xpath_becomes_relative(self): method test_already_relative_xpath_unchanged (line 225) | def test_already_relative_xpath_unchanged(self): method test_dot_slash_xpath_unchanged (line 231) | def test_dot_slash_xpath_unchanged(self): method test_single_slash_xpath_becomes_relative (line 237) | def test_single_slash_xpath_becomes_relative(self): method test_empty_xpath (line 243) | def test_empty_xpath(self): method test_complex_xpath_expressions (line 249) | def test_complex_xpath_expressions(self): class TestGetByAndValue (line 263) | class TestGetByAndValue: method setup_method (line 266) | def setup_method(self): method test_single_id_selector (line 277) | def test_single_id_selector(self): method test_single_class_name_selector (line 283) | def test_single_class_name_selector(self): method test_single_name_selector (line 289) | def test_single_name_selector(self): method test_single_tag_name_selector (line 295) | def test_single_tag_name_selector(self): method test_single_custom_attribute (line 301) | def test_single_custom_attribute(self): method test_multiple_attributes_build_xpath (line 307) | def test_multiple_attributes_build_xpath(self): method test_text_with_single_attribute_builds_xpath (line 318) | def test_text_with_single_attribute_builds_xpath(self): method test_text_alone_builds_xpath (line 329) | def test_text_alone_builds_xpath(self): method test_empty_values_ignored (line 335) | def test_empty_values_ignored(self): method test_all_empty_values_with_custom_attribute (line 346) | def test_all_empty_values_with_custom_attribute(self): class TestFindElementsMixinEdgeCases (line 358) | class TestFindElementsMixinEdgeCases: method setup_method (line 361) | def setup_method(self): method test_find_no_criteria_raises_error (line 366) | async def test_find_no_criteria_raises_error(self): method test_find_empty_string_criteria_raises_error (line 372) | async def test_find_empty_string_criteria_raises_error(self): method test_find_none_criteria_raises_error (line 378) | async def test_find_none_criteria_raises_error(self): method test_find_with_custom_attributes_only (line 384) | async def test_find_with_custom_attributes_only(self): method test_query_empty_expression (line 398) | async def test_query_empty_expression(self): method test_find_or_wait_element_timeout_zero (line 411) | async def test_find_or_wait_element_timeout_zero(self): method test_find_or_wait_element_timeout_success_on_retry (line 420) | async def test_find_or_wait_element_timeout_success_on_retry(self): method test_find_or_wait_element_timeout_failure (line 440) | async def test_find_or_wait_element_timeout_failure(self): method test_find_or_wait_element_timeout_failure_no_exception (line 455) | async def test_find_or_wait_element_timeout_failure_no_exception(self): method test_find_elements_with_timeout (line 471) | async def test_find_elements_with_timeout(self): method test_regex_pattern_in_get_expression_type (line 483) | def test_regex_pattern_in_get_expression_type(self): method test_xpath_building_with_boolean_attributes (line 510) | def test_xpath_building_with_boolean_attributes(self): method test_xpath_building_preserves_attribute_order (line 520) | def test_xpath_building_preserves_attribute_order(self): method test_xpath_building_with_unicode_characters (line 536) | def test_xpath_building_with_unicode_characters(self): method test_class_name_xpath_normalization (line 546) | def test_class_name_xpath_normalization(self): class TestUnderscoreToHyphenConversion (line 558) | class TestUnderscoreToHyphenConversion: method test_single_underscore_to_hyphen (line 561) | def test_single_underscore_to_hyphen(self): method test_multiple_underscores_to_hyphens (line 566) | def test_multiple_underscores_to_hyphens(self): method test_aria_attributes_conversion (line 571) | def test_aria_attributes_conversion(self): method test_data_attributes_conversion (line 580) | def test_data_attributes_conversion(self): method test_mixed_underscore_and_hyphen_attributes (line 591) | def test_mixed_underscore_and_hyphen_attributes(self): method test_combined_standard_and_custom_attributes (line 601) | def test_combined_standard_and_custom_attributes(self): method test_underscore_in_attribute_value_unchanged (line 614) | def test_underscore_in_attribute_value_unchanged(self): method test_complex_attribute_names_conversion (line 620) | def test_complex_attribute_names_conversion(self): method test_single_character_segments (line 631) | def test_single_character_segments(self): method test_no_underscores_unchanged (line 640) | def test_no_underscores_unchanged(self): method test_trailing_and_leading_underscores (line 651) | def test_trailing_and_leading_underscores(self): method test_conversion_with_text_parameter (line 663) | def test_conversion_with_text_parameter(self): method test_conversion_with_tag_name (line 672) | def test_conversion_with_tag_name(self): class TestUnderscoreConversionWithGetByAndValue (line 684) | class TestUnderscoreConversionWithGetByAndValue: method setup_method (line 687) | def setup_method(self): method test_custom_attribute_with_underscore (line 698) | def test_custom_attribute_with_underscore(self): method test_multiple_custom_attributes_with_underscores (line 707) | def test_multiple_custom_attributes_with_underscores(self): method test_standard_and_custom_attributes_mixed (line 720) | def test_standard_and_custom_attributes_mixed(self): class TestFindElementsSymbolFiltering (line 734) | class TestFindElementsSymbolFiltering: method setup_method (line 737) | def setup_method(self): method test_find_elements_filters_symbol_properties (line 742) | async def test_find_elements_filters_symbol_properties(self): class TestParseIframeSegmentsXPath (line 769) | class TestParseIframeSegmentsXPath: method test_splits (line 857) | def test_splits(self, expression, expected_selectors): method test_no_split (line 876) | def test_no_split(self, expression): class TestParseIframeSegmentsCSS (line 882) | class TestParseIframeSegmentsCSS: method test_splits (line 970) | def test_splits(self, expression, expected_selectors): method test_no_split (line 991) | def test_no_split(self, expression): class TestFindAcrossIframes (line 997) | class TestFindAcrossIframes: method setup_method (line 1000) | def setup_method(self): method test_css_single_iframe_crossing (line 1004) | async def test_css_single_iframe_crossing(self): method test_xpath_single_iframe_crossing (line 1027) | async def test_xpath_single_iframe_crossing(self): method test_nested_iframe_crossing (line 1048) | async def test_nested_iframe_crossing(self): method test_xpath_iframe_not_at_root (line 1077) | async def test_xpath_iframe_not_at_root(self): method test_css_iframe_not_at_root (line 1101) | async def test_css_iframe_not_at_root(self): method test_find_all_last_segment (line 1125) | async def test_find_all_last_segment(self): method test_timeout_retry_succeeds (line 1147) | async def test_timeout_retry_succeeds(self): method test_timeout_expires_raises (line 1169) | async def test_timeout_expires_raises(self): method test_no_timeout_raises_element_not_found (line 1183) | async def test_no_timeout_raises_element_not_found(self): method test_raise_exc_false_returns_none (line 1193) | async def test_raise_exc_false_returns_none(self): method test_raise_exc_false_find_all_returns_empty (line 1203) | async def test_raise_exc_false_find_all_returns_empty(self): method test_intermediate_not_iframe_returns_none_and_raises (line 1213) | async def test_intermediate_not_iframe_returns_none_and_raises(self): method test_regular_selector_no_iframe_passthrough (line 1226) | async def test_regular_selector_no_iframe_passthrough(self): FILE: tests/test_har_recording_integration.py function _find_free_port (line 20) | def _find_free_port(): class _TestAPIHandler (line 27) | class _TestAPIHandler(BaseHTTPRequestHandler): method do_GET (line 30) | def do_GET(self): method do_POST (line 42) | def do_POST(self): method _respond (line 57) | def _respond(self, status, content_type, body): method do_OPTIONS (line 65) | def do_OPTIONS(self): method log_message (line 72) | def log_message(self, format, *args): function api_server (line 77) | def api_server(): function test_page_path (line 90) | def test_page_path(): function _wait_for_requests_done (line 95) | async def _wait_for_requests_done(tab, timeout=15): class TestHarRecordIntegration (line 106) | class TestHarRecordIntegration: method test_record_captures_page_load (line 110) | async def test_record_captures_page_load(self, ci_chrome_options, api_... method test_record_captures_fetch_requests (line 135) | async def test_record_captures_fetch_requests( method test_record_captures_response_bodies (line 160) | async def test_record_captures_response_bodies( method test_record_captures_post_request (line 190) | async def test_record_captures_post_request( method test_record_correct_status_codes (line 227) | async def test_record_correct_status_codes( method test_record_body_sizes (line 261) | async def test_record_body_sizes(self, ci_chrome_options, api_server, ... class TestHarSaveIntegration (line 284) | class TestHarSaveIntegration: method test_save_produces_valid_har (line 288) | async def test_save_produces_valid_har( method test_save_entries_sorted_by_time (line 316) | async def test_save_entries_sorted_by_time( method test_save_entries_have_required_fields (line 340) | async def test_save_entries_have_required_fields( FILE: tests/test_iframe_integration.py class TestSimpleIframeIntegration (line 17) | class TestSimpleIframeIntegration: method test_find_element_in_iframe_by_id (line 21) | async def test_find_element_in_iframe_by_id(self, ci_chrome_options): method test_find_multiple_elements_in_iframe (line 54) | async def test_find_multiple_elements_in_iframe(self, ci_chrome_options): method test_find_element_in_iframe_by_css_selector (line 76) | async def test_find_element_in_iframe_by_css_selector(self, ci_chrome_... method test_find_element_in_iframe_by_xpath (line 97) | async def test_find_element_in_iframe_by_xpath(self, ci_chrome_options): method test_insert_text_in_iframe_input (line 117) | async def test_insert_text_in_iframe_input(self, ci_chrome_options): method test_insert_text_in_iframe_textarea (line 142) | async def test_insert_text_in_iframe_textarea(self, ci_chrome_options): method test_click_button_in_iframe (line 167) | async def test_click_button_in_iframe(self, ci_chrome_options): method test_get_inner_html_of_iframe (line 188) | async def test_get_inner_html_of_iframe(self, ci_chrome_options): method test_get_inner_html_of_element_in_iframe (line 208) | async def test_get_inner_html_of_element_in_iframe(self, ci_chrome_opt... method test_get_children_elements_in_iframe (line 231) | async def test_get_children_elements_in_iframe(self, ci_chrome_options): method test_element_visibility_in_iframe (line 252) | async def test_element_visibility_in_iframe(self, ci_chrome_options): class TestNestedIframeIntegration (line 275) | class TestNestedIframeIntegration: method test_find_element_in_parent_iframe (line 279) | async def test_find_element_in_parent_iframe(self, ci_chrome_options): method test_find_nested_iframe_element (line 302) | async def test_find_nested_iframe_element(self, ci_chrome_options): method test_find_element_in_nested_iframe (line 321) | async def test_find_element_in_nested_iframe(self, ci_chrome_options): method test_insert_text_in_nested_iframe (line 346) | async def test_insert_text_in_nested_iframe(self, ci_chrome_options): method test_find_multiple_elements_in_nested_iframe (line 373) | async def test_find_multiple_elements_in_nested_iframe(self, ci_chrome... method test_submit_form_in_nested_iframe (line 397) | async def test_submit_form_in_nested_iframe(self, ci_chrome_options): class TestIframeElementInteraction (line 428) | class TestIframeElementInteraction: method test_select_option_in_iframe (line 432) | async def test_select_option_in_iframe(self, ci_chrome_options): method test_get_attributes_from_iframe_elements (line 466) | async def test_get_attributes_from_iframe_elements(self, ci_chrome_opt... method test_deep_nested_element_search_in_iframe (line 496) | async def test_deep_nested_element_search_in_iframe(self, ci_chrome_op... method test_wait_for_element_in_iframe (line 517) | async def test_wait_for_element_in_iframe(self, ci_chrome_options): method test_element_not_found_in_iframe (line 539) | async def test_element_not_found_in_iframe(self, ci_chrome_options): method test_clear_input_in_iframe (line 556) | async def test_clear_input_in_iframe(self, ci_chrome_options): method test_multiple_iframes_on_same_page (line 579) | async def test_multiple_iframes_on_same_page(self, ci_chrome_options): method test_iframe_context_persistence (line 606) | async def test_iframe_context_persistence(self, ci_chrome_options): method test_get_text_from_multiple_elements_in_iframe (line 635) | async def test_get_text_from_multiple_elements_in_iframe(self, ci_chro... class TestMultipleIframesSelection (line 663) | class TestMultipleIframesSelection: method test_find_specific_iframe_by_id_among_multiple (line 667) | async def test_find_specific_iframe_by_id_among_multiple(self, ci_chro... method test_find_elements_in_correct_iframe_among_multiple (line 693) | async def test_find_elements_in_correct_iframe_among_multiple(self, ci... method test_different_iframes_have_different_contexts (line 718) | async def test_different_iframes_have_different_contexts(self, ci_chro... method test_iframe_selection_by_data_attribute (line 754) | async def test_iframe_selection_by_data_attribute(self, ci_chrome_opti... method test_iterate_over_multiple_iframes (line 774) | async def test_iterate_over_multiple_iframes(self, ci_chrome_options): method test_find_in_iframe_after_finding_in_another (line 805) | async def test_find_in_iframe_after_finding_in_another(self, ci_chrome... class TestIframeEdgeCases (line 837) | class TestIframeEdgeCases: method test_dynamic_content_in_iframe (line 841) | async def test_dynamic_content_in_iframe(self, ci_chrome_options): method test_iframe_reload_handling (line 874) | async def test_iframe_reload_handling(self, ci_chrome_options): class TestIframeTypeText (line 903) | class TestIframeTypeText: method test_type_text_in_iframe_input (line 907) | async def test_type_text_in_iframe_input(self, ci_chrome_options): method test_type_text_humanized_in_iframe_input (line 929) | async def test_type_text_humanized_in_iframe_input(self, ci_chrome_opt... method test_type_text_email_in_iframe_input (line 954) | async def test_type_text_email_in_iframe_input(self, ci_chrome_options): class TestFrameElementIntegration (line 977) | class TestFrameElementIntegration: method test_frame_element_is_iframe (line 981) | async def test_frame_element_is_iframe(self, ci_chrome_options): method test_find_element_inside_frame (line 997) | async def test_find_element_inside_frame(self, ci_chrome_options): method test_frame_context_is_resolved (line 1015) | async def test_frame_context_is_resolved(self, ci_chrome_options): method test_inner_html_of_frame (line 1032) | async def test_inner_html_of_frame(self, ci_chrome_options): method test_multiple_frames_in_frameset (line 1047) | async def test_multiple_frames_in_frameset(self, ci_chrome_options): method test_type_text_in_frame_input (line 1074) | async def test_type_text_in_frame_input(self, ci_chrome_options): FILE: tests/test_interactions/test_iframe.py function mock_element (line 12) | async def mock_element(): function resolver (line 24) | async def resolver(mock_element): class TestIFrameContext (line 29) | class TestIFrameContext: method test_default_values (line 32) | def test_default_values(self): method test_all_values (line 43) | def test_all_values(self): class TestIFrameContextResolverInit (line 64) | class TestIFrameContextResolverInit: method test_initialization (line 67) | def test_initialization(self, mock_element): class TestGetBaseSession (line 74) | class TestGetBaseSession: method test_get_base_session_default (line 77) | def test_get_base_session_default(self, mock_element): method test_get_base_session_with_routing_session (line 89) | def test_get_base_session_with_routing_session(self, mock_element): class TestExtractFrameMetadata (line 102) | class TestExtractFrameMetadata: method test_extract_with_content_document (line 105) | def test_extract_with_content_document(self): method test_extract_without_content_document (line 125) | def test_extract_without_content_document(self): method test_extract_with_base_url_fallback (line 142) | def test_extract_with_base_url_fallback(self): method test_extract_empty_node_info (line 157) | def test_extract_empty_node_info(self): class TestWalkFrames (line 171) | class TestWalkFrames: method test_walk_frames_single_frame (line 174) | def test_walk_frames_single_frame(self): method test_walk_frames_with_children (line 186) | def test_walk_frames_with_children(self): method test_walk_frames_nested_children (line 210) | def test_walk_frames_nested_children(self): method test_walk_frames_empty_tree (line 235) | def test_walk_frames_empty_tree(self): method test_walk_frames_no_child_frames_key (line 240) | def test_walk_frames_no_child_frames_key(self): class TestFindChildByParent (line 252) | class TestFindChildByParent: method test_find_direct_child (line 255) | def test_find_direct_child(self): method test_find_nested_child (line 271) | def test_find_nested_child(self): method test_find_child_not_found (line 292) | def test_find_child_not_found(self): method test_find_child_empty_tree (line 308) | def test_find_child_empty_tree(self): method test_find_child_no_child_frames (line 314) | def test_find_child_no_child_frames(self): class TestGetFrameTreeFor (line 326) | class TestGetFrameTreeFor: method test_get_frame_tree_without_session (line 330) | async def test_get_frame_tree_without_session(self): method test_get_frame_tree_with_session (line 353) | async def test_get_frame_tree_with_session(self): class TestOwnerBackendFor (line 376) | class TestOwnerBackendFor: method test_owner_backend_without_session (line 380) | async def test_owner_backend_without_session(self): method test_owner_backend_with_session (line 396) | async def test_owner_backend_with_session(self): method test_owner_backend_missing_result (line 412) | async def test_owner_backend_missing_result(self): class TestCreateIsolatedWorldForFrame (line 424) | class TestCreateIsolatedWorldForFrame: method test_create_isolated_world_success (line 428) | async def test_create_isolated_world_success(self): method test_create_isolated_world_with_session (line 445) | async def test_create_isolated_world_with_session(self): method test_create_isolated_world_failure (line 461) | async def test_create_isolated_world_failure(self): class TestGetDocumentObjectId (line 472) | class TestGetDocumentObjectId: method test_get_document_object_id_success (line 476) | async def test_get_document_object_id_success(self, resolver, mock_ele... method test_get_document_object_id_with_session (line 489) | async def test_get_document_object_id_with_session(self, resolver, moc... method test_get_document_object_id_failure (line 508) | async def test_get_document_object_id_failure(self, resolver, mock_ele... class TestResolveOopifIfNeeded (line 520) | class TestResolveOopifIfNeeded: method test_returns_early_when_no_parent_frame (line 524) | async def test_returns_early_when_no_parent_frame(self, resolver): method test_returns_early_when_frame_resolved_without_backend (line 540) | async def test_returns_early_when_frame_resolved_without_backend(self,... class TestResolveFrameByOwner (line 556) | class TestResolveFrameByOwner: method test_resolve_returns_current_url_on_failure (line 560) | async def test_resolve_returns_current_url_on_failure(self, resolver): method test_resolve_returns_found_frame (line 576) | async def test_resolve_returns_found_frame(self, resolver): method test_resolve_uses_fallback_url (line 593) | async def test_resolve_uses_fallback_url(self, resolver): FILE: tests/test_interactions/test_keyboard.py function mock_tab (line 11) | async def mock_tab(): function keyboard_api (line 20) | async def keyboard_api(mock_tab): class TestKeyboardAPIInitialization (line 25) | class TestKeyboardAPIInitialization: method test_initialization (line 28) | def test_initialization(self, mock_tab): class TestKeyboardAPIDown (line 34) | class TestKeyboardAPIDown: method test_key_down_without_modifiers (line 38) | async def test_key_down_without_modifiers(self, keyboard_api, mock_tab): method test_key_down_with_modifiers (line 55) | async def test_key_down_with_modifiers(self, keyboard_api, mock_tab): method test_key_down_enter (line 67) | async def test_key_down_enter(self, keyboard_api, mock_tab): class TestKeyboardAPIUp (line 78) | class TestKeyboardAPIUp: method test_key_up (line 82) | async def test_key_up(self, keyboard_api, mock_tab): method test_key_up_shift (line 95) | async def test_key_up_shift(self, keyboard_api, mock_tab): class TestKeyboardAPIPress (line 106) | class TestKeyboardAPIPress: method test_press_key (line 110) | async def test_press_key(self, keyboard_api, mock_tab): method test_press_with_modifiers (line 126) | async def test_press_with_modifiers(self, keyboard_api, mock_tab): method test_press_with_custom_interval (line 135) | async def test_press_with_custom_interval(self, keyboard_api, mock_tab): class TestKeyboardAPIHotkey (line 142) | class TestKeyboardAPIHotkey: method test_hotkey_ctrl_c (line 146) | async def test_hotkey_ctrl_c(self, keyboard_api, mock_tab): method test_hotkey_ctrl_shift_t (line 167) | async def test_hotkey_ctrl_shift_t(self, keyboard_api, mock_tab): method test_hotkey_alt_f4 (line 186) | async def test_hotkey_alt_f4(self, keyboard_api, mock_tab): method test_hotkey_shift_a (line 196) | async def test_hotkey_shift_a(self, keyboard_api, mock_tab): class TestKeyboardAPISplitModifiers (line 206) | class TestKeyboardAPISplitModifiers: method test_split_single_modifier_and_key (line 209) | def test_split_single_modifier_and_key(self): method test_split_multiple_modifiers_and_key (line 217) | def test_split_multiple_modifiers_and_key(self): method test_split_no_modifiers (line 225) | def test_split_no_modifiers(self): method test_split_only_modifiers (line 233) | def test_split_only_modifiers(self): class TestKeyboardAPICalculateModifier (line 242) | class TestKeyboardAPICalculateModifier: method test_calculate_single_modifier_ctrl (line 245) | def test_calculate_single_modifier_ctrl(self): method test_calculate_single_modifier_shift (line 251) | def test_calculate_single_modifier_shift(self): method test_calculate_single_modifier_alt (line 257) | def test_calculate_single_modifier_alt(self): method test_calculate_single_modifier_meta (line 263) | def test_calculate_single_modifier_meta(self): method test_calculate_ctrl_shift (line 269) | def test_calculate_ctrl_shift(self): method test_calculate_ctrl_alt (line 275) | def test_calculate_ctrl_alt(self): method test_calculate_all_modifiers (line 281) | def test_calculate_all_modifiers(self): method test_calculate_no_modifiers (line 287) | def test_calculate_no_modifiers(self): class TestKeyboardAPIIntegrationWithTab (line 294) | class TestKeyboardAPIIntegrationWithTab: method test_keyboard_api_uses_tab_execute_command (line 298) | async def test_keyboard_api_uses_tab_execute_command(self, mock_tab): method test_keyboard_api_stores_executor_reference (line 306) | def test_keyboard_api_stores_executor_reference(self, mock_tab): class TestKeyboardAPIEdgeCases (line 312) | class TestKeyboardAPIEdgeCases: method test_press_numpad_key (line 316) | async def test_press_numpad_key(self, keyboard_api, mock_tab): method test_press_function_key (line 326) | async def test_press_function_key(self, keyboard_api, mock_tab): method test_hotkey_with_digit (line 336) | async def test_hotkey_with_digit(self, keyboard_api, mock_tab): method test_sequential_key_presses (line 346) | async def test_sequential_key_presses(self, keyboard_api, mock_tab): class TestTimingConfig (line 365) | class TestTimingConfig: method test_default_values (line 368) | def test_default_values(self): method test_custom_values (line 393) | def test_custom_values(self): method test_frozen_dataclass (line 407) | def test_frozen_dataclass(self): class TestTypoConfig (line 417) | class TestTypoConfig: method test_default_values (line 420) | def test_default_values(self): method test_custom_values (line 432) | def test_custom_values(self): method test_frozen_dataclass (line 444) | def test_frozen_dataclass(self): class TestTypoResult (line 454) | class TestTypoResult: method test_typo_result_creation (line 457) | def test_typo_result_creation(self): method test_typo_result_default_wrong_char (line 467) | def test_typo_result_default_wrong_char(self): class TestKeyboardTypeText (line 478) | class TestKeyboardTypeText: method test_type_text_basic (line 482) | async def test_type_text_basic(self, keyboard_api, mock_tab): method test_type_text_with_humanize_calls_humanized_method (line 505) | async def test_type_text_with_humanize_calls_humanized_method(self, mo... method test_type_text_interval_deprecated_warning (line 517) | async def test_type_text_interval_deprecated_warning(self, keyboard_api): method test_type_char_calls_focus (line 530) | async def test_type_char_calls_focus(self, keyboard_api, mock_tab): method test_type_backspace_calls_focus (line 537) | async def test_type_backspace_calls_focus(self, keyboard_api, mock_tab): method test_ensure_focus_skipped_without_focus_method (line 544) | async def test_ensure_focus_skipped_without_focus_method(self): method test_type_char (line 555) | async def test_type_char(self, keyboard_api, mock_tab): method test_type_char_uppercase (line 583) | async def test_type_char_uppercase(self, keyboard_api, mock_tab): method test_type_char_digit (line 594) | async def test_type_char_digit(self, keyboard_api, mock_tab): method test_type_char_symbol (line 605) | async def test_type_char_symbol(self, keyboard_api, mock_tab): method test_type_char_unmapped (line 616) | async def test_type_char_unmapped(self, keyboard_api, mock_tab): method test_type_char_all_mapped_characters (line 635) | async def test_type_char_all_mapped_characters(self, mock_tab, char): method test_type_backspace (line 652) | async def test_type_backspace(self, keyboard_api, mock_tab): class TestKeyboardTypoGeneration (line 667) | class TestKeyboardTypoGeneration: method test_should_make_typo_returns_boolean (line 670) | def test_should_make_typo_returns_boolean(self): method test_select_typo_type_returns_valid_type (line 677) | def test_select_typo_type_returns_valid_type(self, keyboard_api): method test_create_adjacent_typo_returns_adjacent_type (line 693) | def test_create_adjacent_typo_returns_adjacent_type(self): method test_create_adjacent_typo_fallback_for_unknown_char (line 704) | def test_create_adjacent_typo_fallback_for_unknown_char(self): method test_create_adjacent_typo_preserves_case (line 716) | def test_create_adjacent_typo_preserves_case(self): method test_create_transpose_typo (line 730) | def test_create_transpose_typo(self, keyboard_api): method test_create_transpose_typo_fallback_no_next_char (line 739) | def test_create_transpose_typo_fallback_no_next_char(self, keyboard_api): method test_create_missed_space_typo (line 748) | def test_create_missed_space_typo(self, keyboard_api): method test_create_missed_space_typo_fallback_non_space (line 756) | def test_create_missed_space_typo_fallback_non_space(self, keyboard_api): method test_generate_typo_returns_typo_result (line 765) | def test_generate_typo_returns_typo_result(self, keyboard_api): method test_create_typo_with_all_types (line 773) | def test_create_typo_with_all_types(self, keyboard_api): class TestKeyboardTypoHandling (line 783) | class TestKeyboardTypoHandling: method test_do_adjacent_typo (line 787) | async def test_do_adjacent_typo(self, keyboard_api, mock_tab): method test_do_transpose_typo (line 796) | async def test_do_transpose_typo(self, keyboard_api, mock_tab): method test_do_double_typo (line 805) | async def test_do_double_typo(self, keyboard_api, mock_tab): method test_do_skip_typo (line 813) | async def test_do_skip_typo(self, keyboard_api, mock_tab): method test_do_missed_space_typo (line 826) | async def test_do_missed_space_typo(self, keyboard_api, mock_tab): method test_handle_typo_adjacent (line 834) | async def test_handle_typo_adjacent(self, keyboard_api, mock_tab): method test_handle_typo_transpose_skips_next (line 846) | async def test_handle_typo_transpose_skips_next(self, keyboard_api, mo... method test_handle_typo_double (line 857) | async def test_handle_typo_double(self, keyboard_api, mock_tab): method test_handle_typo_skip (line 868) | async def test_handle_typo_skip(self, keyboard_api, mock_tab): method test_handle_typo_missed_space_skips_next (line 879) | async def test_handle_typo_missed_space_skips_next(self, keyboard_api,... class TestKeyboardRealisticDelay (line 890) | class TestKeyboardRealisticDelay: method test_apply_realistic_delay_basic (line 894) | async def test_apply_realistic_delay_basic(self, keyboard_api): method test_apply_realistic_delay_with_punctuation (line 900) | async def test_apply_realistic_delay_with_punctuation(self, keyboard_a... method test_pause_chars_constant (line 906) | def test_pause_chars_constant(self): class TestKeyboardWithCustomConfig (line 920) | class TestKeyboardWithCustomConfig: method test_keyboard_with_custom_timing (line 923) | def test_keyboard_with_custom_timing(self, mock_tab): method test_keyboard_with_custom_typo_config (line 937) | def test_keyboard_with_custom_typo_config(self, mock_tab): method test_keyboard_uses_default_configs (line 951) | def test_keyboard_uses_default_configs(self, mock_tab): class TestKeyboardProcessCharWithTypo (line 961) | class TestKeyboardProcessCharWithTypo: method test_process_char_no_typo (line 965) | async def test_process_char_no_typo(self, mock_tab): method test_process_char_with_typo (line 980) | async def test_process_char_with_typo(self, mock_tab): class TestKeyboardAPIBackwardCompatibility (line 1001) | class TestKeyboardAPIBackwardCompatibility: method test_keyboard_api_alias (line 1004) | def test_keyboard_api_alias(self): FILE: tests/test_interactions/test_mouse.py function mock_tab (line 18) | async def mock_tab(): function mouse (line 26) | async def mouse(mock_tab): class TestMouseTimingConfig (line 34) | class TestMouseTimingConfig: method test_default_values (line 37) | def test_default_values(self): method test_custom_values (line 68) | def test_custom_values(self): method test_frozen_dataclass (line 74) | def test_frozen_dataclass(self): class TestMouseInitialization (line 83) | class TestMouseInitialization: method test_initialization (line 86) | def test_initialization(self, mock_tab): method test_initialization_with_custom_timing (line 92) | def test_initialization_with_custom_timing(self, mock_tab): method test_timing_property_getter (line 97) | def test_timing_property_getter(self, mock_tab): method test_timing_property_setter (line 103) | def test_timing_property_setter(self, mock_tab): method test_initial_position_is_origin (line 113) | def test_initial_position_is_origin(self, mock_tab): class TestMouseMove (line 121) | class TestMouseMove: method test_move_dispatches_mouse_moved (line 125) | async def test_move_dispatches_mouse_moved(self, mouse, mock_tab): method test_move_updates_position (line 136) | async def test_move_updates_position(self, mouse): method test_move_rounds_float_coordinates (line 141) | async def test_move_rounds_float_coordinates(self, mouse, mock_tab): method test_move_single_event_when_not_humanized (line 149) | async def test_move_single_event_when_not_humanized(self, mouse, mock_... method test_move_humanize_delegates_to_humanized (line 154) | async def test_move_humanize_delegates_to_humanized(self, mouse): class TestMouseClick (line 163) | class TestMouseClick: method test_click_dispatches_move_press_release (line 167) | async def test_click_dispatches_move_press_release(self, mouse, mock_t... method test_click_left_button_default (line 179) | async def test_click_left_button_default(self, mouse, mock_tab): method test_click_right_button (line 187) | async def test_click_right_button(self, mouse, mock_tab): method test_click_with_click_count (line 194) | async def test_click_with_click_count(self, mouse, mock_tab): method test_click_updates_position (line 202) | async def test_click_updates_position(self, mouse): method test_click_position_in_press_release (line 207) | async def test_click_position_in_press_release(self, mouse, mock_tab): method test_click_humanize_delegates (line 217) | async def test_click_humanize_delegates(self, mouse): class TestMouseDoubleClick (line 226) | class TestMouseDoubleClick: method test_double_click_delegates_to_click (line 230) | async def test_double_click_delegates_to_click(self, mouse): method test_double_click_right_button (line 238) | async def test_double_click_right_button(self, mouse): method test_double_click_humanized (line 246) | async def test_double_click_humanized(self, mouse): class TestMouseDown (line 257) | class TestMouseDown: method test_down_dispatches_mouse_pressed (line 261) | async def test_down_dispatches_mouse_pressed(self, mouse, mock_tab): method test_down_at_current_position (line 269) | async def test_down_at_current_position(self, mouse, mock_tab): method test_down_with_right_button (line 278) | async def test_down_with_right_button(self, mouse, mock_tab): class TestMouseUp (line 288) | class TestMouseUp: method test_up_dispatches_mouse_released (line 292) | async def test_up_dispatches_mouse_released(self, mouse, mock_tab): method test_up_at_current_position (line 300) | async def test_up_at_current_position(self, mouse, mock_tab): method test_up_with_right_button (line 309) | async def test_up_with_right_button(self, mouse, mock_tab): class TestMouseDrag (line 319) | class TestMouseDrag: method test_drag_dispatches_correct_sequence (line 323) | async def test_drag_dispatches_correct_sequence(self, mouse, mock_tab): method test_drag_updates_position_to_end (line 340) | async def test_drag_updates_position_to_end(self, mouse): method test_drag_uses_left_button (line 345) | async def test_drag_uses_left_button(self, mouse, mock_tab): method test_drag_humanize_delegates (line 353) | async def test_drag_humanize_delegates(self, mouse): class TestMinimumJerk (line 362) | class TestMinimumJerk: method test_at_zero (line 365) | def test_at_zero(self): method test_at_one (line 368) | def test_at_one(self): method test_at_half (line 371) | def test_at_half(self): method test_monotonic (line 375) | def test_monotonic(self): method test_stays_in_range (line 380) | def test_stays_in_range(self): class TestBezier2D (line 386) | class TestBezier2D: method test_at_t_zero_returns_p0 (line 389) | def test_at_t_zero_returns_p0(self): method test_at_t_one_returns_p3 (line 393) | def test_at_t_one_returns_p3(self): method test_straight_line_midpoint (line 397) | def test_straight_line_midpoint(self): method test_curved_path (line 402) | def test_curved_path(self): class TestFittsDuration (line 408) | class TestFittsDuration: method test_zero_distance (line 411) | def test_zero_distance(self): method test_negative_distance (line 415) | def test_negative_distance(self): method test_increases_with_distance (line 419) | def test_increases_with_distance(self): method test_decreases_with_target_width (line 424) | def test_decreases_with_target_width(self): method test_known_value (line 429) | def test_known_value(self): class TestRandomControlPoints (line 436) | class TestRandomControlPoints: method _call (line 439) | def _call(self, start, end, config=None): method test_returns_two_points (line 447) | def test_returns_two_points(self): method test_short_distance_returns_start_end (line 452) | def test_short_distance_returns_start_end(self): method test_control_points_not_on_line (line 456) | def test_control_points_not_on_line(self): method test_short_distance_reduced_curvature (line 463) | def test_short_distance_reduced_curvature(self): class TestComputeTremorSigma (line 479) | class TestComputeTremorSigma: method test_zero_dt_returns_full_amplitude (line 482) | def test_zero_dt_returns_full_amplitude(self): method test_high_velocity_reduces_tremor (line 487) | def test_high_velocity_reduces_tremor(self): method test_low_velocity_high_tremor (line 493) | def test_low_velocity_high_tremor(self): class TestMouseHumanizedMove (line 503) | class TestMouseHumanizedMove: method test_short_distance_single_dispatch (line 507) | async def test_short_distance_single_dispatch(self, mouse, mock_tab): method test_dispatches_multiple_events (line 513) | async def test_dispatches_multiple_events(self, mouse, mock_tab): method test_final_position_is_target (line 528) | async def test_final_position_is_target(self, mouse, mock_tab): method test_all_events_are_mouse_moved (line 540) | async def test_all_events_are_mouse_moved(self, mouse, mock_tab): method test_longer_distance_more_events (line 554) | async def test_longer_distance_more_events(self, mouse, mock_tab): method test_overshoot_moves_past_target (line 573) | async def test_overshoot_moves_past_target(self, mouse, mock_tab): class TestMouseHumanizedClick (line 596) | class TestMouseHumanizedClick: method test_includes_move_press_release (line 600) | async def test_includes_move_press_release(self, mouse, mock_tab): method test_double_click_has_two_press_release_pairs (line 625) | async def test_double_click_has_two_press_release_pairs(self, mouse, m... method test_click_count_in_commands (line 649) | async def test_click_count_in_commands(self, mouse, mock_tab): method test_click_lands_at_exact_position (line 673) | async def test_click_lands_at_exact_position(self, mouse, mock_tab): class TestMouseHumanizedDrag (line 699) | class TestMouseHumanizedDrag: method test_drag_includes_press_and_release (line 703) | async def test_drag_includes_press_and_release(self, mouse, mock_tab): method test_drag_ends_at_target (line 726) | async def test_drag_ends_at_target(self, mouse, mock_tab): method test_drag_press_before_release (line 742) | async def test_drag_press_before_release(self, mouse, mock_tab): class TestDispatchMove (line 768) | class TestDispatchMove: method test_dispatches_correct_command (line 772) | async def test_dispatches_correct_command(self, mouse, mock_tab): method test_updates_position_with_float (line 782) | async def test_updates_position_with_float(self, mouse): class TestDispatchButton (line 787) | class TestDispatchButton: method test_dispatches_pressed (line 791) | async def test_dispatches_pressed(self, mouse, mock_tab): method test_dispatches_released (line 803) | async def test_dispatches_released(self, mouse, mock_tab): class TestMouseAPIAlias (line 814) | class TestMouseAPIAlias: method test_mouse_api_is_mouse (line 817) | def test_mouse_api_is_mouse(self): class TestTabMouseProperty (line 824) | class TestTabMouseProperty: method test_tab_mouse_property_exists (line 827) | def test_tab_mouse_property_exists(self): method test_tab_mouse_returns_mouse_api (line 831) | def test_tab_mouse_returns_mouse_api(self): FILE: tests/test_interactions/test_scroll.py function mock_tab (line 11) | async def mock_tab(): function scroll_api (line 19) | async def scroll_api(mock_tab): class TestScrollAPIInitialization (line 24) | class TestScrollAPIInitialization: method test_initialization (line 27) | def test_initialization(self, mock_tab): class TestScrollAPIBy (line 33) | class TestScrollAPIBy: method test_scroll_down_smooth (line 37) | async def test_scroll_down_smooth(self, scroll_api, mock_tab): method test_scroll_up_smooth (line 56) | async def test_scroll_up_smooth(self, scroll_api, mock_tab): method test_scroll_right_smooth (line 68) | async def test_scroll_right_smooth(self, scroll_api, mock_tab): method test_scroll_left_smooth (line 80) | async def test_scroll_left_smooth(self, scroll_api, mock_tab): method test_scroll_down_instant (line 92) | async def test_scroll_down_instant(self, scroll_api, mock_tab): method test_scroll_with_float_distance (line 104) | async def test_scroll_with_float_distance(self, scroll_api, mock_tab): class TestScrollAPIToTop (line 115) | class TestScrollAPIToTop: method test_scroll_to_top_smooth (line 119) | async def test_scroll_to_top_smooth(self, scroll_api, mock_tab): method test_scroll_to_top_instant (line 135) | async def test_scroll_to_top_instant(self, scroll_api, mock_tab): class TestScrollAPIToBottom (line 147) | class TestScrollAPIToBottom: method test_scroll_to_bottom_smooth (line 151) | async def test_scroll_to_bottom_smooth(self, scroll_api, mock_tab): method test_scroll_to_bottom_instant (line 167) | async def test_scroll_to_bottom_instant(self, scroll_api, mock_tab): class TestScrollAPIHelperMethods (line 179) | class TestScrollAPIHelperMethods: method test_get_axis_and_distance_down (line 182) | def test_get_axis_and_distance_down(self, scroll_api): method test_get_axis_and_distance_up (line 188) | def test_get_axis_and_distance_up(self, scroll_api): method test_get_axis_and_distance_right (line 194) | def test_get_axis_and_distance_right(self, scroll_api): method test_get_axis_and_distance_left (line 200) | def test_get_axis_and_distance_left(self, scroll_api): method test_get_behavior_smooth (line 206) | def test_get_behavior_smooth(self, scroll_api): method test_get_behavior_instant (line 211) | def test_get_behavior_instant(self, scroll_api): class TestScrollAPIIntegrationWithTab (line 217) | class TestScrollAPIIntegrationWithTab: method test_tab_has_scroll_property (line 221) | async def test_tab_has_scroll_property(self): method test_tab_scroll_property_is_lazy (line 237) | async def test_tab_scroll_property_is_lazy(self): method test_scroll_execute_command_integration (line 257) | async def test_scroll_execute_command_integration(self): class TestScrollAPIScriptGeneration (line 279) | class TestScrollAPIScriptGeneration: method test_scroll_by_script_structure (line 283) | async def test_scroll_by_script_structure(self, scroll_api, mock_tab): method test_to_top_script_structure (line 297) | async def test_to_top_script_structure(self, scroll_api, mock_tab): method test_to_bottom_script_structure (line 311) | async def test_to_bottom_script_structure(self, scroll_api, mock_tab): class TestScrollAPIAwaitPromise (line 325) | class TestScrollAPIAwaitPromise: method test_scroll_by_uses_await_promise (line 329) | async def test_scroll_by_uses_await_promise(self, scroll_api, mock_tab): method test_to_top_uses_await_promise (line 340) | async def test_to_top_uses_await_promise(self, scroll_api, mock_tab): method test_to_bottom_uses_await_promise (line 350) | async def test_to_bottom_uses_await_promise(self, scroll_api, mock_tab): class TestScrollTimingConfig (line 360) | class TestScrollTimingConfig: method test_default_values (line 363) | def test_default_values(self): method test_custom_values (line 381) | def test_custom_values(self): method test_frozen_dataclass (line 403) | def test_frozen_dataclass(self): class TestCubicBezier (line 413) | class TestCubicBezier: method test_initialization (line 416) | def test_initialization(self): method test_sample_curve_x_at_zero (line 430) | def test_sample_curve_x_at_zero(self): method test_sample_curve_x_at_one (line 438) | def test_sample_curve_x_at_one(self): method test_sample_curve_y_at_zero (line 446) | def test_sample_curve_y_at_zero(self): method test_sample_curve_y_at_one (line 454) | def test_sample_curve_y_at_one(self): method test_sample_curve_derivative_x (line 462) | def test_sample_curve_derivative_x(self): method test_solve_curve_x_finds_t_for_x (line 471) | def test_solve_curve_x_finds_t_for_x(self): method test_solve_returns_y_for_given_x (line 483) | def test_solve_returns_y_for_given_x(self): method test_solve_returns_values_between_0_and_1 (line 495) | def test_solve_returns_values_between_0_and_1(self): method test_solve_curve_x_with_out_of_range_values (line 505) | def test_solve_curve_x_with_out_of_range_values(self): method test_ease_in_out_bezier (line 519) | def test_ease_in_out_bezier(self): method test_linear_bezier (line 530) | def test_linear_bezier(self): class TestScrollHumanizedMethods (line 543) | class TestScrollHumanizedMethods: method test_scroll_by_with_humanize_true (line 547) | async def test_scroll_by_with_humanize_true(self, mock_tab): method test_scroll_to_top_with_humanize_true (line 561) | async def test_scroll_to_top_with_humanize_true(self, mock_tab): method test_scroll_to_bottom_with_humanize_true (line 575) | async def test_scroll_to_bottom_with_humanize_true(self, mock_tab): method test_calculate_effective_distance_without_overshoot (line 589) | async def test_calculate_effective_distance_without_overshoot(self, mo... method test_calculate_effective_distance_with_overshoot (line 602) | async def test_calculate_effective_distance_with_overshoot(self, mock_... method test_calculate_duration (line 620) | async def test_calculate_duration(self, mock_tab): method test_calculate_duration_increases_with_distance (line 633) | async def test_calculate_duration_increases_with_distance(self, mock_t... method test_get_viewport_center (line 652) | async def test_get_viewport_center(self, mock_tab): method test_get_viewport_center_fallback (line 666) | async def test_get_viewport_center_fallback(self, mock_tab): method test_get_viewport_center_empty_response (line 681) | async def test_get_viewport_center_empty_response(self, mock_tab): method test_get_current_scroll_y (line 693) | async def test_get_current_scroll_y(self, mock_tab): method test_get_current_scroll_y_default (line 707) | async def test_get_current_scroll_y_default(self, mock_tab): method test_get_remaining_scroll_to_bottom (line 719) | async def test_get_remaining_scroll_to_bottom(self, mock_tab): method test_dispatch_scroll_event (line 733) | async def test_dispatch_scroll_event(self, mock_tab): class TestScrollWithCustomTiming (line 758) | class TestScrollWithCustomTiming: method test_scroll_with_custom_timing (line 761) | def test_scroll_with_custom_timing(self, mock_tab): method test_scroll_uses_default_timing (line 776) | def test_scroll_uses_default_timing(self, mock_tab): class TestCubicBezierBisectionFallback (line 787) | class TestCubicBezierBisectionFallback: method test_bisection_fallback_triggered_by_out_of_range_derivative (line 790) | def test_bisection_fallback_triggered_by_out_of_range_derivative(self): method test_bisection_converges_for_edge_cases (line 805) | def test_bisection_converges_for_edge_cases(self): method test_solve_with_zero_derivative_fallback (line 819) | def test_solve_with_zero_derivative_fallback(self): class TestScrollHumanized (line 832) | class TestScrollHumanized: method test_scroll_humanized_calls_perform_scroll_loop (line 836) | async def test_scroll_humanized_calls_perform_scroll_loop(self, mock_t... method test_scroll_humanized_with_overshoot_triggers_correction (line 854) | async def test_scroll_humanized_with_overshoot_triggers_correction(sel... class TestScrollToEndHumanized (line 879) | class TestScrollToEndHumanized: method test_scroll_to_end_down_calls_humanized_scroll (line 883) | async def test_scroll_to_end_down_calls_humanized_scroll(self, mock_tab): method test_scroll_to_end_up_uses_current_scroll_y (line 907) | async def test_scroll_to_end_up_uses_current_scroll_y(self, mock_tab): method test_scroll_to_end_stops_when_threshold_reached (line 931) | async def test_scroll_to_end_stops_when_threshold_reached(self, mock_t... method test_scroll_to_end_stops_when_stuck (line 950) | async def test_scroll_to_end_stops_when_stuck(self, mock_tab): class TestPerformScrollLoop (line 971) | class TestPerformScrollLoop: method test_perform_scroll_loop_dispatches_events (line 975) | async def test_perform_scroll_loop_dispatches_events(self, mock_tab): method test_perform_scroll_loop_horizontal (line 1011) | async def test_perform_scroll_loop_horizontal(self, mock_tab): method test_perform_scroll_loop_returns_scrolled_amount (line 1039) | async def test_perform_scroll_loop_returns_scrolled_amount(self, mock_... class TestScrollCorrection (line 1070) | class TestScrollCorrection: method test_scroll_correction_dispatches_scroll_events (line 1074) | async def test_scroll_correction_dispatches_scroll_events(self, mock_t... method test_scroll_correction_horizontal (line 1109) | async def test_scroll_correction_horizontal(self, mock_tab): method test_scroll_correction_velocity_decreases (line 1141) | async def test_scroll_correction_velocity_decreases(self, mock_tab): class TestPublicMethodsWithHumanize (line 1173) | class TestPublicMethodsWithHumanize: method test_by_with_humanize_calls_scroll_humanized (line 1177) | async def test_by_with_humanize_calls_scroll_humanized(self, mock_tab): method test_to_top_with_humanize_calls_scroll_to_end_humanized (line 1191) | async def test_to_top_with_humanize_calls_scroll_to_end_humanized(self... method test_to_bottom_with_humanize_calls_scroll_to_end_humanized (line 1205) | async def test_to_bottom_with_humanize_calls_scroll_to_end_humanized(s... class TestScrollAPIBackwardCompatibility (line 1219) | class TestScrollAPIBackwardCompatibility: method test_scroll_api_alias (line 1222) | def test_scroll_api_alias(self): FILE: tests/test_managers/test_browser_managers.py function proxy_options (line 16) | def proxy_options(): function temp_manager (line 21) | def temp_manager(): function process_manager (line 28) | def process_manager(): function chromium_options_manager (line 34) | def chromium_options_manager(proxy_options): function test_proxy_manager_no_proxy (line 39) | def test_proxy_manager_no_proxy(proxy_options): function test_proxy_manager_with_credentials (line 47) | def test_proxy_manager_with_credentials(proxy_options): function test_proxy_manager_invalid_credentials_format (line 57) | def test_proxy_manager_invalid_credentials_format(proxy_options): function test_proxy_manager_with_scheme_http (line 69) | def test_proxy_manager_with_scheme_http(proxy_options): function test_proxy_manager_with_scheme_socks (line 79) | def test_proxy_manager_with_scheme_socks(proxy_options): function test_proxy_manager_invalid_proxy_format (line 89) | def test_proxy_manager_invalid_proxy_format(proxy_options): function test_start_browser_process (line 98) | def test_start_browser_process(process_manager): function test_stop_process (line 110) | def test_stop_process(process_manager): function test_create_temp_dir (line 119) | def test_create_temp_dir(temp_manager): function test_cleanup_temp_dirs (line 126) | def test_cleanup_temp_dirs(temp_manager): function test_retry_process_file (line 139) | def test_retry_process_file(temp_manager): function test_handle_cleanup_error (line 162) | def test_handle_cleanup_error(temp_manager): function test_initialize_options_with_none (line 197) | def test_initialize_options_with_none(chromium_options_manager): function test_initialize_options_with_valid_options (line 204) | def test_initialize_options_with_valid_options(): function test_initialize_options_with_invalid_type (line 214) | def test_initialize_options_with_invalid_type(): function test_add_default_arguments (line 220) | def test_add_default_arguments(): function test_initialize_options_creates_new_instance (line 230) | def test_initialize_options_creates_new_instance(): function test_initialize_options_preserves_custom_arguments (line 238) | def test_initialize_options_preserves_custom_arguments(): FILE: tests/test_managers/test_connection_managers.py function commands_manager (line 8) | def commands_manager(): function events_manager (line 14) | def events_manager(): function test_create_command_future (line 19) | def test_create_command_future(commands_manager): function test_resolve_command (line 37) | def test_resolve_command(commands_manager): function test_resolve_unknown_command (line 59) | def test_resolve_unknown_command(commands_manager): function test_remove_pending_command (line 70) | def test_remove_pending_command(commands_manager): function test_register_callback_success (line 82) | def test_register_callback_success(events_manager): function test_remove_existing_callback (line 96) | def test_remove_existing_callback(events_manager): function test_remove_nonexistent_callback (line 109) | def test_remove_nonexistent_callback(events_manager): function test_clear_callbacks (line 116) | def test_clear_callbacks(events_manager): function test_process_event_updates_network_logs (line 128) | async def test_process_event_updates_network_logs(events_manager): function test_process_event_triggers_callbacks (line 143) | async def test_process_event_triggers_callbacks(events_manager): function test_trigger_callbacks_error_handling (line 179) | async def test_trigger_callbacks_error_handling(events_manager, caplog): FILE: tests/test_nested_oopif_integration.py class _SilentHandler (line 22) | class _SilentHandler(http.server.SimpleHTTPRequestHandler): method log_message (line 23) | def log_message(self, *args): function _wait_for_server (line 27) | def _wait_for_server(host: str, port: int, timeout: float = 5.0) -> None: function cross_origin_servers (line 42) | def cross_origin_servers(): class TestCrossOriginIframeResolution (line 69) | class TestCrossOriginIframeResolution: method test_find_element_in_cross_origin_iframe (line 73) | async def test_find_element_in_cross_origin_iframe( method test_click_button_in_cross_origin_iframe (line 91) | async def test_click_button_in_cross_origin_iframe( class TestNestedIframeInsideOopif (line 112) | class TestNestedIframeInsideOopif: method test_find_element_in_nested_iframe_inside_oopif (line 116) | async def test_find_element_in_nested_iframe_inside_oopif( method test_type_text_in_nested_iframe_inside_oopif (line 136) | async def test_type_text_in_nested_iframe_inside_oopif( class TestShadowRootInsideOopif (line 160) | class TestShadowRootInsideOopif: method test_find_shadow_roots_inside_oopif (line 164) | async def test_find_shadow_roots_inside_oopif( method test_click_button_in_shadow_root_inside_oopif (line 187) | async def test_click_button_in_shadow_root_inside_oopif( class TestIframeInsideShadowRootInsideOopif (line 214) | class TestIframeInsideShadowRootInsideOopif: method test_find_element_in_iframe_inside_shadow_in_oopif (line 218) | async def test_find_element_in_iframe_inside_shadow_in_oopif( method test_type_text_in_iframe_inside_shadow_in_oopif (line 249) | async def test_type_text_in_iframe_inside_shadow_in_oopif( FILE: tests/test_shadow_root.py function mock_connection_handler (line 22) | async def mock_connection_handler(): function shadow_root (line 31) | def shadow_root(mock_connection_handler): function host_element (line 41) | def host_element(mock_connection_handler): class TestShadowRootInit (line 52) | class TestShadowRootInit: method test_init_with_defaults (line 55) | def test_init_with_defaults(self, mock_connection_handler): method test_init_with_all_params (line 65) | def test_init_with_all_params(self, mock_connection_handler, host_elem... method test_init_with_user_agent_mode (line 76) | def test_init_with_user_agent_mode(self, mock_connection_handler): class TestShadowRootProperties (line 85) | class TestShadowRootProperties: method test_mode_property (line 88) | def test_mode_property(self, shadow_root): method test_host_element_none (line 91) | def test_host_element_none(self, shadow_root): method test_host_element_with_reference (line 94) | def test_host_element_with_reference(self, mock_connection_handler, ho... class TestShadowRootInnerHtml (line 103) | class TestShadowRootInnerHtml: method test_inner_html (line 107) | async def test_inner_html(self, shadow_root): method test_inner_html_empty (line 116) | async def test_inner_html_empty(self, shadow_root): class TestShadowRootRepr (line 124) | class TestShadowRootRepr: method test_repr (line 127) | def test_repr(self, shadow_root): method test_str (line 133) | def test_str(self, shadow_root): method test_str_closed (line 137) | def test_str_closed(self, mock_connection_handler): class TestShadowRootFindElements (line 146) | class TestShadowRootFindElements: method test_find_raises_not_implemented (line 150) | async def test_find_raises_not_implemented(self, shadow_root): method test_query_xpath_raises_not_implemented (line 156) | async def test_query_xpath_raises_not_implemented(self, shadow_root): method test_query_css_in_shadow_root (line 162) | async def test_query_css_in_shadow_root(self, shadow_root): class TestWebElementGetShadowRoot (line 186) | class TestWebElementGetShadowRoot: method test_get_shadow_root_success (line 190) | async def test_get_shadow_root_success(self, host_element): method test_get_shadow_root_closed_mode (line 224) | async def test_get_shadow_root_closed_mode(self, host_element): method test_get_shadow_root_not_found (line 255) | async def test_get_shadow_root_not_found(self, host_element): method test_get_shadow_root_empty_shadow_roots_list (line 271) | async def test_get_shadow_root_empty_shadow_roots_list(self, host_elem... method test_get_shadow_root_no_node_id (line 288) | async def test_get_shadow_root_no_node_id(self, host_element): function tab_connection_handler (line 313) | async def tab_connection_handler(): function tab (line 328) | async def tab(tab_connection_handler): class TestTabFindShadowRoots (line 340) | class TestTabFindShadowRoots: method test_find_shadow_roots_single (line 344) | async def test_find_shadow_roots_single(self, tab): method test_find_shadow_roots_none_found (line 402) | async def test_find_shadow_roots_none_found(self, tab): method test_find_shadow_roots_multiple (line 428) | async def test_find_shadow_roots_multiple(self, tab): method test_find_shadow_roots_nested_in_shadow_root (line 491) | async def test_find_shadow_roots_nested_in_shadow_root(self, tab): method test_find_shadow_roots_in_iframe (line 548) | async def test_find_shadow_roots_in_iframe(self, tab): method test_find_shadow_roots_skips_unresolvable (line 607) | async def test_find_shadow_roots_skips_unresolvable(self, tab): method test_find_shadow_roots_host_resolution_fails_gracefully (line 660) | async def test_find_shadow_roots_host_resolution_fails_gracefully(self... method test_find_shadow_roots_skips_missing_backend_id (line 699) | async def test_find_shadow_roots_skips_missing_backend_id(self, tab): class TestCollectShadowRootsFromTree (line 730) | class TestCollectShadowRootsFromTree: method test_empty_tree (line 733) | def test_empty_tree(self): method test_no_shadow_roots (line 738) | def test_no_shadow_roots(self): method test_collects_shadow_root (line 750) | def test_collects_shadow_root(self): method test_collects_from_content_document (line 761) | def test_collects_from_content_document(self): method test_collects_nested_shadow_roots (line 786) | def test_collects_nested_shadow_roots(self): class TestTabFindShadowRootsDeep (line 809) | class TestTabFindShadowRootsDeep: method test_deep_false_same_as_default (line 813) | async def test_deep_false_same_as_default(self, tab): method test_deep_collects_oopif_shadow_roots (line 852) | async def test_deep_collects_oopif_shadow_roots(self, tab): method test_deep_no_oopif_targets (line 925) | async def test_deep_no_oopif_targets(self, tab): method test_deep_oopif_attachment_fails_gracefully (line 951) | async def test_deep_oopif_attachment_fails_gracefully(self, tab): method test_deep_oopif_shadow_root_has_routing_context (line 1021) | async def test_deep_oopif_shadow_root_has_routing_context(self, tab): method test_deep_combines_main_and_oopif_roots (line 1096) | async def test_deep_combines_main_and_oopif_roots(self, tab): method test_deep_oopif_no_host_sets_iframe_context_on_shadow_root (line 1189) | async def test_deep_oopif_no_host_sets_iframe_context_on_shadow_root(s... class TestTabFindShadowRootsTimeout (line 1260) | class TestTabFindShadowRootsTimeout: method test_timeout_zero_returns_immediately (line 1264) | async def test_timeout_zero_returns_immediately(self, tab): method test_timeout_raises_when_no_shadow_roots_found (line 1283) | async def test_timeout_raises_when_no_shadow_roots_found(self, tab): method test_timeout_returns_when_shadow_roots_appear (line 1301) | async def test_timeout_returns_when_shadow_roots_appear(self, tab): method test_timeout_with_deep_waits_for_oopif_roots (line 1356) | async def test_timeout_with_deep_waits_for_oopif_roots(self, tab): class TestGetShadowRootTimeout (line 1436) | class TestGetShadowRootTimeout: method test_timeout_zero_raises_immediately (line 1440) | async def test_timeout_zero_raises_immediately(self, mock_connection_h... method test_timeout_raises_wait_element_timeout (line 1457) | async def test_timeout_raises_wait_element_timeout(self, mock_connecti... method test_timeout_returns_when_shadow_root_appears (line 1474) | async def test_timeout_returns_when_shadow_root_appears(self, mock_con... FILE: tests/test_shadow_root_integration.py class TestOpenShadowRoot (line 17) | class TestOpenShadowRoot: method test_get_shadow_root_open (line 21) | async def test_get_shadow_root_open(self, ci_chrome_options): method test_find_elements_in_open_shadow (line 35) | async def test_find_elements_in_open_shadow(self, ci_chrome_options): method test_query_in_open_shadow (line 53) | async def test_query_in_open_shadow(self, ci_chrome_options): method test_find_all_in_open_shadow (line 66) | async def test_find_all_in_open_shadow(self, ci_chrome_options): method test_inner_html_open (line 79) | async def test_inner_html_open(self, ci_chrome_options): class TestClosedShadowRoot (line 92) | class TestClosedShadowRoot: method test_get_shadow_root_closed (line 96) | async def test_get_shadow_root_closed(self, ci_chrome_options): method test_find_elements_in_closed_shadow (line 109) | async def test_find_elements_in_closed_shadow(self, ci_chrome_options): method test_query_in_closed_shadow (line 124) | async def test_query_in_closed_shadow(self, ci_chrome_options): method test_inner_html_closed (line 140) | async def test_inner_html_closed(self, ci_chrome_options): class TestNestedShadowRoots (line 153) | class TestNestedShadowRoots: method test_nested_open_then_closed (line 157) | async def test_nested_open_then_closed(self, ci_chrome_options): class TestShadowRootNotPresent (line 183) | class TestShadowRootNotPresent: method test_no_shadow_root_raises (line 187) | async def test_no_shadow_root_raises(self, ci_chrome_options): FILE: tests/test_socks5_proxy_forwarder.py function forwarder (line 34) | def forwarder(): function mock_reader (line 46) | def mock_reader(): function mock_writer (line 52) | def mock_writer(): class TestSuppressClosed (line 66) | class TestSuppressClosed: method test_suppresses_os_error (line 67) | def test_suppresses_os_error(self): method test_suppresses_connection_reset (line 71) | def test_suppresses_connection_reset(self): method test_does_not_suppress_value_error (line 75) | def test_does_not_suppress_value_error(self): method test_no_error_passes_through (line 80) | def test_no_error_passes_through(self): class TestHandshakeError (line 90) | class TestHandshakeError: method test_default_reply_code (line 91) | def test_default_reply_code(self): method test_custom_reply_code (line 96) | def test_custom_reply_code(self): method test_connection_refused_reply_code (line 100) | def test_connection_refused_reply_code(self): method test_send_reply_defaults_to_true (line 104) | def test_send_reply_defaults_to_true(self): method test_send_reply_false (line 108) | def test_send_reply_false(self): class TestReadExact (line 118) | class TestReadExact: method test_returns_exact_bytes (line 120) | async def test_returns_exact_bytes(self, mock_reader): method test_incomplete_read_raises_handshake_error (line 127) | async def test_incomplete_read_raises_handshake_error(self, mock_reader): method test_incomplete_read_has_general_failure_code (line 135) | async def test_incomplete_read_has_general_failure_code(self, mock_rea... method test_timeout_raises_handshake_error (line 144) | async def test_timeout_raises_handshake_error(self, mock_reader): method test_timeout_has_general_failure_code (line 157) | async def test_timeout_has_general_failure_code(self, mock_reader): method test_peer_label_in_timeout_message (line 171) | async def test_peer_label_in_timeout_message(self, mock_reader): method test_peer_label_in_incomplete_read_message (line 184) | async def test_peer_label_in_incomplete_read_message(self, mock_reader): class TestSkipBndAddress (line 197) | class TestSkipBndAddress: method test_ipv4 (line 199) | async def test_ipv4(self, mock_reader): method test_domain (line 205) | async def test_domain(self, mock_reader): method test_ipv6 (line 220) | async def test_ipv6(self, mock_reader): method test_incomplete_read_propagates (line 226) | async def test_incomplete_read_propagates(self, mock_reader): class TestCloseWriter (line 239) | class TestCloseWriter: method test_calls_close_and_wait_closed (line 241) | async def test_calls_close_and_wait_closed(self, mock_writer): method test_suppresses_os_error_on_close (line 247) | async def test_suppresses_os_error_on_close(self): method test_suppresses_os_error_on_wait_closed (line 254) | async def test_suppresses_os_error_on_wait_closed(self): class TestPipe (line 266) | class TestPipe: method test_forwards_data_until_eof (line 268) | async def test_forwards_data_until_eof(self, mock_reader, mock_writer): method test_closes_writer_on_eof (line 276) | async def test_closes_writer_on_eof(self, mock_reader, mock_writer): method test_closes_writer_on_connection_reset (line 283) | async def test_closes_writer_on_connection_reset(self, mock_reader, mo... class TestCredentialValidation (line 294) | class TestCredentialValidation: method test_valid_credentials (line 295) | def test_valid_credentials(self): method test_username_too_long (line 305) | def test_username_too_long(self): method test_password_too_long (line 315) | def test_password_too_long(self): method test_max_length_credentials_accepted (line 325) | def test_max_length_credentials_accepted(self): method test_multibyte_username_too_long (line 334) | def test_multibyte_username_too_long(self): class TestNonLoopbackWarning (line 351) | class TestNonLoopbackWarning: method test_loopback_no_warning (line 353) | async def test_loopback_no_warning(self, forwarder, caplog): method test_non_loopback_warns (line 365) | async def test_non_loopback_warns(self, caplog): method test_ipv6_non_loopback_warns (line 385) | async def test_ipv6_non_loopback_warns(self, caplog): method test_hostname_does_not_crash (line 404) | async def test_hostname_does_not_crash(self, caplog): method test_non_localhost_hostname_logs_debug (line 424) | async def test_non_localhost_hostname_logs_debug(self, caplog): method test_multi_socket_divergent_ports_raises (line 444) | async def test_multi_socket_divergent_ports_raises(self, forwarder): method test_multi_socket_same_port_ok (line 460) | async def test_multi_socket_same_port_ok(self, forwarder): class TestCredentialMasking (line 479) | class TestCredentialMasking: method test_remote_handshake_does_not_log_credentials (line 481) | async def test_remote_handshake_does_not_log_credentials(self, forward... method test_remote_connect_failure_propagates_rep_code (line 523) | async def test_remote_connect_failure_propagates_rep_code(self, forwar... class TestHandleClientReplyCodes (line 561) | class TestHandleClientReplyCodes: method test_handshake_error_uses_exc_reply_code (line 563) | async def test_handshake_error_uses_exc_reply_code(self, forwarder): method test_connection_refused_uses_specific_code (line 581) | async def test_connection_refused_uses_specific_code(self, forwarder): method test_generic_os_error_uses_general_failure (line 604) | async def test_generic_os_error_uses_general_failure(self, forwarder): method test_open_connection_timeout_sends_general_failure (line 625) | async def test_open_connection_timeout_sends_general_failure(self, for... method test_send_reply_false_skips_reply (line 649) | async def test_send_reply_false_skips_reply(self, forwarder): method test_handle_client_closes_both_writers (line 667) | async def test_handle_client_closes_both_writers(self, forwarder): class TestSendReply (line 709) | class TestSendReply: method test_sends_correct_reply (line 711) | async def test_sends_correct_reply(self, mock_writer): method test_sends_failure_reply (line 719) | async def test_sends_failure_reply(self, mock_writer): class TestAcceptLocalHandshake (line 730) | class TestAcceptLocalHandshake: method test_greeting_eof_has_send_reply_false (line 732) | async def test_greeting_eof_has_send_reply_false(self, forwarder): method test_unsupported_version_has_send_reply_false (line 748) | async def test_unsupported_version_has_send_reply_false(self, forwarder): method test_unsupported_command_uses_reply_code_0x07 (line 762) | async def test_unsupported_command_uses_reply_code_0x07(self, forwarder): method test_unsupported_address_type_uses_reply_code_0x08 (line 789) | async def test_unsupported_address_type_uses_reply_code_0x08(self, for... class TestConstants (line 821) | class TestConstants: method test_handshake_timeout_is_positive (line 822) | def test_handshake_timeout_is_positive(self): method test_reply_codes_are_distinct (line 825) | def test_reply_codes_are_distinct(self): FILE: tests/test_user_agent_parser.py class TestChromeWindows (line 22) | class TestChromeWindows: method test_platform (line 23) | def test_platform(self): method test_vendor (line 27) | def test_vendor(self): method test_app_version (line 31) | def test_app_version(self): method test_metadata_platform (line 35) | def test_metadata_platform(self): method test_metadata_platform_version (line 39) | def test_metadata_platform_version(self): method test_metadata_architecture (line 43) | def test_metadata_architecture(self): method test_metadata_mobile (line 47) | def test_metadata_mobile(self): method test_metadata_model_empty (line 51) | def test_metadata_model_empty(self): method test_metadata_bitness (line 55) | def test_metadata_bitness(self): method test_metadata_wow64 (line 59) | def test_metadata_wow64(self): method test_brands_contains_chromium (line 63) | def test_brands_contains_chromium(self): method test_brands_contains_chrome (line 69) | def test_brands_contains_chrome(self): method test_brands_contains_grease (line 75) | def test_brands_contains_grease(self): method test_brands_major_version (line 82) | def test_brands_major_version(self): method test_full_version_list (line 88) | def test_full_version_list(self): method test_navigator_js_contains_vendor (line 94) | def test_navigator_js_contains_vendor(self): method test_navigator_js_contains_app_version (line 98) | def test_navigator_js_contains_app_version(self): class TestChromeMacOS (line 112) | class TestChromeMacOS: method test_platform (line 113) | def test_platform(self): method test_metadata_platform (line 117) | def test_metadata_platform(self): method test_metadata_platform_version (line 121) | def test_metadata_platform_version(self): method test_metadata_architecture (line 125) | def test_metadata_architecture(self): method test_brands_version (line 129) | def test_brands_version(self): class TestChromeLinux (line 145) | class TestChromeLinux: method test_platform (line 146) | def test_platform(self): method test_metadata_platform (line 150) | def test_metadata_platform(self): method test_metadata_platform_version (line 154) | def test_metadata_platform_version(self): method test_metadata_architecture (line 158) | def test_metadata_architecture(self): class TestEdgeWindows (line 172) | class TestEdgeWindows: method test_platform (line 173) | def test_platform(self): method test_brands_contains_edge (line 177) | def test_brands_contains_edge(self): method test_brands_does_not_contain_chrome (line 183) | def test_brands_does_not_contain_chrome(self): method test_brands_chromium_present (line 189) | def test_brands_chromium_present(self): method test_full_version_list_edge_version (line 195) | def test_full_version_list_edge_version(self): class TestChromeAndroid (line 211) | class TestChromeAndroid: method test_platform (line 212) | def test_platform(self): method test_metadata_platform (line 216) | def test_metadata_platform(self): method test_metadata_platform_version (line 220) | def test_metadata_platform_version(self): method test_metadata_mobile (line 224) | def test_metadata_mobile(self): method test_metadata_model (line 228) | def test_metadata_model(self): method test_metadata_architecture (line 232) | def test_metadata_architecture(self): class TestIPhone (line 246) | class TestIPhone: method test_platform (line 247) | def test_platform(self): method test_metadata_platform (line 251) | def test_metadata_platform(self): method test_metadata_platform_version (line 255) | def test_metadata_platform_version(self): method test_metadata_mobile (line 259) | def test_metadata_mobile(self): method test_metadata_architecture (line 263) | def test_metadata_architecture(self): class TestWindowsVersionMapping (line 270) | class TestWindowsVersionMapping: method test_windows_7 (line 271) | def test_windows_7(self): method test_windows_8 (line 279) | def test_windows_8(self): method test_windows_8_1 (line 287) | def test_windows_8_1(self): class TestGreaseBrands (line 298) | class TestGreaseBrands: method test_grease_brand_is_first (line 299) | def test_grease_brand_is_first(self): method test_full_version_list_grease_is_first (line 305) | def test_full_version_list_grease_is_first(self): method test_grease_version_format_for_brands (line 311) | def test_grease_version_format_for_brands(self): method test_grease_version_format_for_full_version_list (line 317) | def test_grease_version_format_for_full_version_list(self): class TestEdgeCases (line 326) | class TestEdgeCases: method test_unknown_browser_defaults_to_chrome (line 327) | def test_unknown_browser_defaults_to_chrome(self): method test_unknown_os_defaults_to_windows (line 334) | def test_unknown_os_defaults_to_windows(self): method test_returns_parsed_user_agent_type (line 343) | def test_returns_parsed_user_agent_type(self): method test_navigator_js_escapes_single_quotes (line 347) | def test_navigator_js_escapes_single_quotes(self): method test_app_version_strips_mozilla_prefix (line 355) | def test_app_version_strips_mozilla_prefix(self): method test_non_mozilla_ua_keeps_full_string (line 360) | def test_non_mozilla_ua_keeps_full_string(self): class TestChromeOS (line 375) | class TestChromeOS: method test_platform (line 376) | def test_platform(self): method test_metadata_platform (line 380) | def test_metadata_platform(self): method test_metadata_platform_version (line 384) | def test_metadata_platform_version(self): FILE: tests/test_utils.py class TestUtils (line 21) | class TestUtils: method test_decode_image_to_bytes (line 27) | def test_decode_image_to_bytes(self): method test_decode_image_to_bytes_empty_string (line 36) | def test_decode_image_to_bytes_empty_string(self): method test_decode_image_to_bytes_complex_data (line 43) | def test_decode_image_to_bytes_complex_data(self): method test_successful_response (line 54) | async def test_successful_response(self): method test_network_error (line 72) | async def test_network_error(self): method test_missing_websocket_url (line 89) | async def test_missing_websocket_url(self): method test_http_error_status (line 106) | async def test_http_error_status(self): method test_custom_port (line 123) | async def test_custom_port(self): method test_validate_browser_paths_success (line 139) | def test_validate_browser_paths_success(self): method test_validate_browser_paths_first_valid_wins (line 157) | def test_validate_browser_paths_first_valid_wins(self): method test_validate_browser_paths_no_valid_paths (line 176) | def test_validate_browser_paths_no_valid_paths(self): method test_validate_browser_paths_file_exists_but_not_executable (line 194) | def test_validate_browser_paths_file_exists_but_not_executable(self): method test_validate_browser_paths_directory_instead_of_file (line 210) | def test_validate_browser_paths_directory_instead_of_file(self): method test_validate_browser_paths_empty_list (line 220) | def test_validate_browser_paths_empty_list(self): method test_validate_browser_paths_mixed_valid_invalid (line 229) | def test_validate_browser_paths_mixed_valid_invalid(self): class TestDecodeBase64ToBytes (line 253) | class TestDecodeBase64ToBytes: method test_decode_base64_to_bytes_valid_input (line 256) | def test_decode_base64_to_bytes_valid_input(self): method test_decode_base64_to_bytes_empty_string (line 262) | def test_decode_base64_to_bytes_empty_string(self): class TestValidateBrowserPaths (line 268) | class TestValidateBrowserPaths: method test_validate_browser_paths_valid_path (line 271) | def test_validate_browser_paths_valid_path(self, tmp_path): method test_validate_browser_paths_invalid_paths (line 281) | def test_validate_browser_paths_invalid_paths(self): class TestScriptAnalysisFunctions (line 289) | class TestScriptAnalysisFunctions: method test_clean_script_for_analysis_removes_comments (line 292) | def test_clean_script_for_analysis_removes_comments(self): method test_clean_script_for_analysis_removes_strings (line 308) | def test_clean_script_for_analysis_removes_strings(self): method test_is_script_already_function_regular_function (line 324) | def test_is_script_already_function_regular_function(self): method test_is_script_already_function_arrow_function (line 329) | def test_is_script_already_function_arrow_function(self): method test_is_script_already_function_with_parameters (line 334) | def test_is_script_already_function_with_parameters(self): method test_is_script_already_function_not_function (line 339) | def test_is_script_already_function_not_function(self): method test_is_script_already_function_with_whitespace (line 344) | def test_is_script_already_function_with_whitespace(self): method test_has_return_outside_function_simple_return (line 349) | def test_has_return_outside_function_simple_return(self): method test_has_return_outside_function_no_return (line 354) | def test_has_return_outside_function_no_return(self): method test_has_return_outside_function_return_inside_function (line 359) | def test_has_return_outside_function_return_inside_function(self): method test_has_return_outside_function_mixed_returns (line 369) | def test_has_return_outside_function_mixed_returns(self): method test_has_return_outside_function_already_function (line 379) | def test_has_return_outside_function_already_function(self): method test_has_return_outside_function_with_comments (line 384) | def test_has_return_outside_function_with_comments(self): method test_has_return_outside_function_nested_braces (line 394) | def test_has_return_outside_function_nested_braces(self): method test_has_return_outside_function_arrow_function (line 408) | def test_has_return_outside_function_arrow_function(self): method test_extract_text_without_strip_without_separator (line 418) | def test_extract_text_without_strip_without_separator(self): method test_extract_text_with_strip_without_separator (line 424) | def test_extract_text_with_strip_without_separator(self): method test_extract_text_without_strip_with_separator (line 430) | def test_extract_text_without_strip_with_separator(self): method test_extract_text_with_strip_with_separator (line 436) | def test_extract_text_with_strip_with_separator(self): FILE: tests/test_web_element.py function mock_connection_handler (line 26) | async def mock_connection_handler(): function web_element (line 35) | def web_element(mock_connection_handler): function input_element (line 59) | def input_element(mock_connection_handler): function file_input_element (line 81) | def file_input_element(mock_connection_handler): function option_element (line 94) | def option_element(mock_connection_handler): function disabled_element (line 107) | def disabled_element(mock_connection_handler): function iframe_element (line 120) | def iframe_element(mock_connection_handler): class TestWebElementInitialization (line 134) | class TestWebElementInitialization: method test_web_element_initialization (line 137) | def test_web_element_initialization(self, web_element): method test_web_element_initialization_empty_attributes (line 150) | def test_web_element_initialization_empty_attributes(self, mock_connec... method test_web_element_initialization_odd_attributes (line 159) | def test_web_element_initialization_odd_attributes(self, mock_connecti... method test_class_attribute_renamed_to_class_name (line 171) | def test_class_attribute_renamed_to_class_name(self, mock_connection_h... class TestWebElementProperties (line 184) | class TestWebElementProperties: method test_basic_properties (line 187) | def test_basic_properties(self, web_element): method test_is_iframe_property_with_iframe_tag (line 194) | def test_is_iframe_property_with_iframe_tag(self, iframe_element): method test_is_iframe_property_with_frame_tag (line 198) | def test_is_iframe_property_with_frame_tag(self, mock_connection_handl... method test_is_iframe_property_with_regular_tag (line 207) | def test_is_iframe_property_with_regular_tag(self, web_element): method test_is_iframe_property_with_no_tag (line 211) | def test_is_iframe_property_with_no_tag(self, mock_connection_handler): method test_is_enabled_property (line 220) | def test_is_enabled_property(self, web_element, disabled_element): method test_properties_with_none_values (line 225) | def test_properties_with_none_values(self, mock_connection_handler): method test_text_property (line 239) | async def test_text_property(self, web_element): method test_text_property_with_nested_elements (line 250) | async def test_text_property_with_nested_elements(self, web_element): method test_bounds_property (line 261) | async def test_bounds_property(self, web_element): method test_inner_html_property (line 272) | async def test_inner_html_property(self, web_element): method test_iframe_context_non_iframe_returns_none (line 283) | async def test_iframe_context_non_iframe_returns_none(self, web_element): class TestWebElementMethods (line 290) | class TestWebElementMethods: method test_get_attribute (line 293) | def test_get_attribute(self, web_element): method test_get_bounds_using_js (line 300) | async def test_get_bounds_using_js(self, web_element): method test_scroll_into_view (line 311) | async def test_scroll_into_view(self, web_element): method test_insert_text (line 317) | async def test_insert_text(self, input_element): method test_type_text (line 325) | async def test_type_text(self, input_element): method test_type_text_default_interval (line 341) | async def test_type_text_default_interval(self, input_element): method test_clear (line 352) | async def test_clear(self, input_element): method test_clear_not_interactable (line 364) | async def test_clear_not_interactable(self, input_element): class TestWebElementIFrame (line 374) | class TestWebElementIFrame: method test_iframe_context_initialization (line 378) | async def test_iframe_context_initialization(self, iframe_element): method test_iframe_inner_html_uses_runtime_evaluate (line 425) | async def test_iframe_inner_html_uses_runtime_evaluate(self, iframe_el... method test_find_within_iframe_uses_document_context (line 481) | async def test_find_within_iframe_uses_document_context(self, iframe_e... method test_get_parent_element_success (line 553) | async def test_get_parent_element_success(self, web_element): method test_get_parent_element_not_found (line 581) | async def test_get_parent_element_not_found(self, web_element): method test_get_parent_element_with_complex_attributes (line 591) | async def test_get_parent_element_with_complex_attributes(self, web_el... method test_get_parent_element_root_element (line 631) | async def test_get_parent_element_root_element(self, web_element): class TestWebElementKeyboardInteraction (line 651) | class TestWebElementKeyboardInteraction: method test_key_down (line 655) | async def test_key_down(self, web_element): method test_key_down_without_modifiers (line 665) | async def test_key_down_without_modifiers(self, web_element): method test_key_up (line 674) | async def test_key_up(self, web_element): method test_press_keyboard_key (line 683) | async def test_press_keyboard_key(self, web_element): method test_press_keyboard_key_default_interval (line 696) | async def test_press_keyboard_key_default_interval(self, web_element): class TestWebElementClicking (line 706) | class TestWebElementClicking: method test_click_using_js_success (line 710) | async def test_click_using_js_success(self, web_element): method test_click_using_js_not_visible (line 723) | async def test_click_using_js_not_visible(self, web_element): method test_click_using_js_not_interactable (line 732) | async def test_click_using_js_not_interactable(self, web_element): method test_click_using_js_option_element (line 744) | async def test_click_using_js_option_element(self, option_element): method test_click_success (line 753) | async def test_click_success(self, web_element): method test_click_not_visible (line 772) | async def test_click_not_visible(self, web_element): method test_click_option_element (line 780) | async def test_click_option_element(self, option_element): method test_click_bounds_fallback_to_js (line 789) | async def test_click_bounds_fallback_to_js(self, web_element): method test_click_option_tag_method (line 809) | async def test_click_option_tag_method(self, option_element): class TestWebElementHumanizedClick (line 817) | class TestWebElementHumanizedClick: method mouse_mock (line 821) | def mouse_mock(self): method element_with_mouse (line 827) | def element_with_mouse(self, mock_connection_handler, mouse_mock): method test_click_humanized_uses_mouse (line 840) | async def test_click_humanized_uses_mouse(self, element_with_mouse, mo... method test_click_humanized_with_offset (line 854) | async def test_click_humanized_with_offset(self, element_with_mouse, m... method test_click_humanize_false_uses_raw_cdp (line 868) | async def test_click_humanize_false_uses_raw_cdp(self, element_with_mo... method test_click_no_mouse_falls_through (line 886) | async def test_click_no_mouse_falls_through(self, web_element): method test_click_humanized_iframe_element_skips_mouse (line 904) | async def test_click_humanized_iframe_element_skips_mouse( method test_click_option_element_skips_mouse (line 927) | async def test_click_option_element_skips_mouse(self, mouse_mock, mock... class TestWebElementFileInput (line 944) | class TestWebElementFileInput: method test_set_input_files_success (line 948) | async def test_set_input_files_success(self, file_input_element): method test_set_input_files_not_file_input (line 957) | async def test_set_input_files_not_file_input(self, web_element): method test_set_input_files_input_but_wrong_type (line 965) | async def test_set_input_files_input_but_wrong_type(self, input_element): class TestWebElementScreenshot (line 973) | class TestWebElementScreenshot: method test_take_screenshot_success (line 977) | async def test_take_screenshot_success(self, web_element, tmp_path): method test_take_screenshot_default_quality (line 1001) | async def test_take_screenshot_default_quality(self, web_element, tmp_... method test_take_screenshot_as_base64 (line 1024) | async def test_take_screenshot_as_base64(self, web_element): method test_take_screenshot_missing_path_without_base64 (line 1043) | async def test_take_screenshot_missing_path_without_base64(self, web_e... method test_take_screenshot_jpg_alias (line 1051) | async def test_take_screenshot_jpg_alias(self, web_element, tmp_path): class TestWebElementVisibility (line 1075) | class TestWebElementVisibility: method test_is_element_visible_true (line 1079) | async def test_is_element_visible_true(self, web_element): method test_is_element_visible_false (line 1087) | async def test_is_element_visible_false(self, web_element): method test_is_element_on_top_true (line 1097) | async def test_is_element_on_top_true(self, web_element): method test_is_element_on_top_false (line 1105) | async def test_is_element_on_top_false(self, web_element): method test_is_element_interactable_true (line 1115) | async def test_is_element_interactable_true(self, web_element): method test_is_element_interactable_false (line 1123) | async def test_is_element_interactable_false(self, web_element): class TestWebElementWaitUntil (line 1133) | class TestWebElementWaitUntil: method test_wait_until_visible_success (line 1137) | async def test_wait_until_visible_success(self, web_element): method test_wait_until_visible_timeout (line 1150) | async def test_wait_until_visible_timeout(self, web_element): method test_wait_until_interactable_success (line 1163) | async def test_wait_until_interactable_success(self, web_element): method test_wait_until_interactable_timeout (line 1172) | async def test_wait_until_interactable_timeout(self, web_element): method test_wait_until_visible_and_interactable (line 1185) | async def test_wait_until_visible_and_interactable(self, web_element): method test_wait_until_no_conditions (line 1200) | async def test_wait_until_no_conditions(self, web_element): class TestWebElementUtilityMethods (line 1206) | class TestWebElementUtilityMethods: method test_calculate_center (line 1209) | def test_calculate_center(self): method test_calculate_center_irregular_shape (line 1217) | def test_calculate_center_irregular_shape(self): method test_is_option_tag_true (line 1225) | def test_is_option_tag_true(self, option_element): method test_is_option_tag_false (line 1229) | def test_is_option_tag_false(self, web_element): method test_def_attributes_empty_list (line 1233) | def test_def_attributes_empty_list(self, mock_connection_handler): method test_def_attributes_class_rename (line 1240) | def test_def_attributes_class_rename(self, mock_connection_handler): method test_execute_script_basic (line 1251) | async def test_execute_script_basic(self, web_element): class TestBuildTextExpression (line 1269) | class TestBuildTextExpression: method test_build_text_expression_with_xpath (line 1272) | def test_build_text_expression_with_xpath(self): method test_build_text_expression_with_name (line 1280) | def test_build_text_expression_with_name(self): method test_build_text_expression_with_id_css (line 1286) | def test_build_text_expression_with_id_css(self): method test_build_text_expression_with_class_css (line 1292) | def test_build_text_expression_with_class_css(self): method test_build_text_expression_with_tag_css (line 1298) | def test_build_text_expression_with_tag_css(self): class TestIsOptionElementHeuristics (line 1304) | class TestIsOptionElementHeuristics: method test_is_option_element_by_tag_attribute (line 1308) | async def test_is_option_element_by_tag_attribute(self, option_element): method test_is_option_element_by_method_and_selector_tag_name (line 1312) | async def test_is_option_element_by_method_and_selector_tag_name(self,... method test_is_option_element_by_xpath_selector_contains_option (line 1317) | async def test_is_option_element_by_xpath_selector_contains_option(sel... method test_execute_script_with_this_syntax (line 1321) | async def test_execute_script_with_this_syntax(self, web_element): method test_execute_script_already_function (line 1339) | async def test_execute_script_already_function(self, web_element): method test_execute_script_with_parameters (line 1357) | async def test_execute_script_with_parameters(self, web_element): method test_execute_script_arrow_function (line 1381) | async def test_execute_script_arrow_function(self, web_element): method test_execute_script_multiline (line 1399) | async def test_execute_script_multiline(self, web_element): method test_execute_script_with_arguments (line 1425) | async def test_execute_script_with_arguments(self, web_element): method test_execute_script_all_parameters (line 1445) | async def test_execute_script_all_parameters(self, web_element): method test_repr (line 1482) | def test_repr(self, web_element): class TestWebElementFindMethods (line 1491) | class TestWebElementFindMethods: method test_find_element_success (line 1495) | async def test_find_element_success(self, web_element): method test_find_element_not_found_with_exception (line 1514) | async def test_find_element_not_found_with_exception(self, web_element): method test_find_element_not_found_no_exception (line 1522) | async def test_find_element_not_found_no_exception(self, web_element): method test_find_elements_success (line 1530) | async def test_find_elements_success(self, web_element): method test_find_with_timeout_success (line 1560) | async def test_find_with_timeout_success(self, web_element): method test_find_with_timeout_failure (line 1580) | async def test_find_with_timeout_failure(self, web_element): method test_query_css_selector (line 1597) | async def test_query_css_selector(self, web_element): method test_query_xpath (line 1615) | async def test_query_xpath(self, web_element): method test_find_no_criteria_raises_error (line 1630) | def test_find_no_criteria_raises_error(self, web_element): class TestWebElementEdgeCases (line 1638) | class TestWebElementEdgeCases: method test_bounds_property_with_connection_error (line 1642) | async def test_bounds_property_with_connection_error(self, web_element): method test_text_property_with_malformed_html (line 1650) | async def test_text_property_with_malformed_html(self, web_element): method test_click_with_zero_hold_time (line 1663) | async def test_click_with_zero_hold_time(self, web_element): method test_type_text_empty_string (line 1680) | async def test_type_text_empty_string(self, input_element): method test_set_input_files_empty_list (line 1690) | async def test_set_input_files_empty_list(self, file_input_element): class TestWebElementGetChildren (line 1702) | class TestWebElementGetChildren: method test_get_children_elements_basic (line 1706) | async def test_get_children_elements_basic(self, ci_chrome_options): method test_get_children_elements_with_tag_filter (line 1756) | async def test_get_children_elements_with_tag_filter(self, ci_chrome_o... method test_get_children_elements_depth_limit (line 1797) | async def test_get_children_elements_depth_limit(self, ci_chrome_optio... method test_get_children_elements_empty_result (line 1834) | async def test_get_children_elements_empty_result(self, ci_chrome_opti... method test_get_children_elements_element_not_found_exception (line 1856) | async def test_get_children_elements_element_not_found_exception(self): method test_get_siblings_elements_basic (line 1878) | async def test_get_siblings_elements_basic(self, ci_chrome_options): method test_get_siblings_elements_with_tag_filter (line 1918) | async def test_get_siblings_elements_with_tag_filter(self, ci_chrome_o... method test_get_siblings_elements_empty_result (line 1957) | async def test_get_siblings_elements_empty_result(self, ci_chrome_opti... method test_get_siblings_elements_element_not_found_exception (line 1987) | async def test_get_siblings_elements_element_not_found_exception(self): function mock_connection_handler (line 2032) | async def mock_connection_handler(): function iframe_element (line 2042) | def iframe_element(mock_connection_handler): function element_in_iframe (line 2055) | def element_in_iframe(mock_connection_handler): class TestInnerHtmlEdgeCases (line 2075) | class TestInnerHtmlEdgeCases: method test_inner_html_iframe_element_with_context (line 2079) | async def test_inner_html_iframe_element_with_context(self, iframe_ele... method test_inner_html_element_in_iframe_uses_call_function_on (line 2147) | async def test_inner_html_element_in_iframe_uses_call_function_on(self... method test_inner_html_element_in_iframe_empty_response (line 2169) | async def test_inner_html_element_in_iframe_empty_response(self, eleme... method test_inner_html_regular_element_fallback (line 2181) | async def test_inner_html_regular_element_fallback(self, mock_connecti...