seleniumbase 4.30.4a2__tar.gz → 4.30.5__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/PKG-INFO +2 -1
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/README.md +1 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/custom_settings.py +1 -1
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/hack_the_planet.py +2 -10
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/test_geolocation.py +1 -1
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/help_docs/customizing_test_runs.md +1 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/mkdocs_build/requirements.txt +1 -1
- seleniumbase-4.30.5/seleniumbase/__version__.py +2 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/behave/behave_sb.py +15 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/config/settings.py +1 -1
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/core/browser_launcher.py +18 -12
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/fixtures/base_case.py +4 -1
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/fixtures/js_utils.py +13 -9
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/plugins/pytest_plugin.py +14 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/plugins/sb_manager.py +13 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/plugins/selenium_plugin.py +14 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase.egg-info/PKG-INFO +2 -1
- seleniumbase-4.30.4a2/seleniumbase/__version__.py +0 -2
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/.github/Workflows.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/.github/workflows/pages.yml +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/.github/workflows/python-nightly-mac.yml +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/.github/workflows/python-nightly-ubuntu.yml +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/.github/workflows/python-nightly-windows.yml +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/.github/workflows/python-package.yml +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/.gitignore +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/CHANGELOG.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/CNAME +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/CODE_OF_CONDUCT.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/CONTRIBUTING.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/Dockerfile +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/LICENSE +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/MANIFEST.in +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/SECURITY.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/_config.yml +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/azure-pipelines.yml +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/ReadMe.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/__init__.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/basic_test.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/behave_bdd/ReadMe.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/behave_bdd/__init__.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/behave_bdd/behave.ini +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/behave_bdd/features/__init__.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/behave_bdd/features/behave.ini +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/behave_bdd/features/calculator.feature +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/behave_bdd/features/environment.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/behave_bdd/features/fail_page.feature +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/behave_bdd/features/realworld.feature +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/behave_bdd/features/steps/__init__.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/behave_bdd/features/steps/calculator.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/behave_bdd/features/steps/fail_page.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/behave_bdd/features/steps/imported.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/behave_bdd/features/steps/swag_labs.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/behave_bdd/features/swag_labs.feature +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/boilerplates/ReadMe.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/boilerplates/__init__.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/boilerplates/base_test_case.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/boilerplates/boilerplate_test.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/boilerplates/classic_obj_test.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/boilerplates/page_objects.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/boilerplates/samples/__init__.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/boilerplates/samples/file_parsing/__init__.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/boilerplates/samples/file_parsing/parse_files.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/boilerplates/samples/file_parsing/qa_login_example.txt +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/boilerplates/samples/file_parsing/staging_login_example.txt +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/boilerplates/samples/google_objects.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/boilerplates/samples/google_test.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/boilerplates/samples/sb_swag_test.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/boilerplates/samples/swag_labs_test.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/boilerplates/samples/test_page_objects.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/boilerplates/sb_fixture_test.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/capabilities/ReadMe.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/capabilities/mac_cap_file.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/capabilities/sample_cap_file_BS.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/capabilities/sample_cap_file_SL.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/capabilities/selenoid_cap_file.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/capabilities/win10_cap_file.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/case_plans/basic_test.MyTestClass.test_basics.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/case_plans/my_first_test.MyTestClass.test_swag_labs.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/case_plans/shadow_root_test.ShadowRootTest.test_shadow_root.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/case_plans/test_assert_elements.ListAssertTests.test_assert_list_of_elements.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/case_plans/test_calculator.CalculatorTests.test_6_times_7_plus_12_equals_54.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/case_plans/test_demo_site.DemoSiteTests.test_demo_site.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/case_plans/test_login.SwagLabsLoginTests.test_swag_labs_login.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/case_plans/test_mfa_login.TestMFALogin.test_mfa_login.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/case_summary.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/chart_maker/ReadMe.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/chart_maker/chart_presentation.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/chart_maker/my_chart.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/chart_maker/pie_charts.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/chart_maker/test_area_chart.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/chart_maker/test_display_chart.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/chart_maker/test_line_chart.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/chart_maker/test_multi_series.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/chart_maker/test_save_chart.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/coffee_cart_tests.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/desktop_apps/ReadMe.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/desktop_apps/recorder.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/dialog_boxes/ReadMe.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/dialog_boxes/dialog_box_tour.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/edge_test.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/example_config.cfg +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/example_logs/ReadMe.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/example_logs/basic_test_info.txt +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/example_logs/page_source.html +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/example_logs/screenshot.png +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/github_test.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/gui_test_runner.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/handle_alert_test.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/iframe_tests.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/locale_code_test.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/master_qa/ReadMe.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/master_qa/__init__.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/master_qa/basic_masterqa_test_0.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/master_qa/masterqa_test_1.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/master_qa/pytest.ini +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/migration/__init__.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/migration/protractor/ReadMe.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/migration/protractor/__init__.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/migration/protractor/example_spec.js +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/migration/protractor/example_test.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/migration/protractor/input_spec.js +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/migration/protractor/input_test.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/migration/protractor/mat_paginator_spec.js +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/migration/protractor/mat_paginator_test.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/migration/raw_selenium/ReadMe.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/migration/raw_selenium/__init__.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/migration/raw_selenium/flaky_messy_raw.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/migration/raw_selenium/long_messy_raw.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/migration/raw_selenium/messy_raw.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/migration/raw_selenium/pytest.ini +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/migration/raw_selenium/refined_raw.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/migration/raw_selenium/simple_sbase.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/my_first_test.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/nth_child_test.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/offline_examples/__init__.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/offline_examples/demo_page.html +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/offline_examples/load_html_test.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/offline_examples/test_demo_page.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/offline_examples/test_handle_alerts.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/offline_examples/test_request_fixture.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/offline_examples/test_user_agent.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/old_wordle_script.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/parameterized_test.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/performance_test.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/presenter/ReadMe.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/presenter/core_presentation.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/presenter/edge_presentation.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/presenter/fundamentals.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/presenter/my_presentation.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/presenter/py_virtual_envs.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/proxy_test.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/pytest.ini +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/rate_limiting_test.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/raw_call.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/raw_driver_context.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/raw_file_call.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/raw_main_call.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/raw_parameter_script.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/raw_sb.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/raw_test_scripts.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/raw_uc_mode.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/setup.cfg +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/shadow_root_test.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/swag_labs_user_tests.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/test_apple_site.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/test_assert_elements.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/test_calculator.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/test_canvas.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/test_checkboxes.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/test_chinese_pdf.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/test_chromedriver.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/test_coffee_cart.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/test_console_logging.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/test_contains_selector.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/test_cycle_elements.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/test_decryption.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/test_deferred_asserts.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/test_demo_site.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/test_detect_404s.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/test_docs_site.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/test_double_click.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/test_download_files.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/test_download_images.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/test_drag_and_drop.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/test_error_page.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/test_event_firing.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/test_fail.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/test_get_coffee.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/test_get_locale_code.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/test_get_pdf_text.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/test_get_user_agent.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/test_hack_search.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/test_image_saving.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/test_inspect_html.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/test_login.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/test_markers.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/test_mfa_login.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/test_multiple_drivers.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/test_null.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/test_override_driver.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/test_override_sb_fixture.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/test_parse_soup.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/test_pdf_asserts.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/test_pytest_parametrize.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/test_repeat_tests.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/test_request_sb_fixture.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/test_save_screenshots.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/test_sb_fixture.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/test_scrape_bing.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/test_select_options.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/test_shadow_dom.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/test_show_file_choosers.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/test_skype_site.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/test_suite.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/test_swag_labs.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/test_tinymce.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/test_todomvc.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/test_url_asserts.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/test_usefixtures.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/test_verify_chromedriver.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/test_window_switching.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/test_xfail.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/test_xkcd.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/time_limit_test.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/tour_examples/ReadMe.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/tour_examples/bootstrap_google_tour.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/tour_examples/bootstrap_xkcd_tour.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/tour_examples/driverjs_maps_tour.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/tour_examples/google_tour.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/tour_examples/hopscotch_google_tour.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/tour_examples/introjs_google_tour.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/tour_examples/maps_introjs_tour.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/tour_examples/octocat_tour.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/tour_examples/shepherd_google_tour.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/tour_examples/xkcd_tour.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/translations/ReadMe.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/translations/chinese_test_1.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/translations/dutch_test_1.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/translations/english_test_1.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/translations/french_test_1.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/translations/italian_test_1.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/translations/japanese_test_1.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/translations/korean_test_1.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/translations/portuguese_test_1.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/translations/pytest.ini +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/translations/russian_test_1.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/translations/spanish_test_1.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/uc_cdp_events.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/unit_tests/ReadMe.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/unit_tests/verify_framework.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/upgrade_chromedriver.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/upload_file_test.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/user_agent_test.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/verify_undetected.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/visual_testing/ReadMe.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/visual_testing/__init__.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/visual_testing/case_plans/layout_test.VisualLayoutTests.test_applitools_layout_change.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/visual_testing/case_plans/python_home_test.VisualLayoutTests.test_python_home_layout_change.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/visual_testing/case_plans/test_layout_fail.VisualLayoutFailureTests.test_applitools_change.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/visual_testing/case_plans/test_layout_fail.VisualLayoutFailureTests.test_xkcd_logo_change.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/visual_testing/case_plans/test_layout_fail.VisualLayout_FixtureTests.test_python_home_change.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/visual_testing/case_plans/xkcd_visual_test.VisualLayoutTests.test_xkcd_layout_change.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/visual_testing/layout_test.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/visual_testing/python_home_test.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/visual_testing/test_layout_fail.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/visual_testing/xkcd_visual_test.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/wordle_test.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/xpath_test.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/youtube_search_test.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/help_docs/ReadMe.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/help_docs/behave_gui.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/help_docs/case_plans.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/help_docs/chinese.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/help_docs/commander.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/help_docs/demo_mode.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/help_docs/desired_capabilities.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/help_docs/features_list.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/help_docs/handling_iframes.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/help_docs/happy_customers.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/help_docs/hidden_files_info.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/help_docs/how_it_works.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/help_docs/html_inspector.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/help_docs/install.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/help_docs/install_python_pip_git.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/help_docs/js_package_manager.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/help_docs/locale_codes.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/help_docs/method_summary.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/help_docs/mobile_testing.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/help_docs/mysql_installation.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/help_docs/recorder_mode.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/help_docs/shadow_dom.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/help_docs/syntax_formats.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/help_docs/thank_you.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/help_docs/translations.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/help_docs/useful_grep_commands.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/help_docs/using_safari_driver.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/help_docs/verify_webdriver.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/help_docs/virtualenv_instructions.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/help_docs/webdriver_installation.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/install.sh +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/integrations/__init__.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/integrations/azure/azure_pipelines/ReadMe.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/integrations/azure/jenkins/ReadMe.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/integrations/behave/ReadMe.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/integrations/behave/behave.ini +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/integrations/behave/features/__init__.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/integrations/behave/features/behave.ini +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/integrations/behave/features/calculator.feature +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/integrations/behave/features/environment.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/integrations/behave/features/fail_page.feature +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/integrations/behave/features/realworld.feature +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/integrations/behave/features/steps/__init__.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/integrations/behave/features/steps/calculator.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/integrations/behave/features/steps/fail_page.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/integrations/behave/features/steps/real_world.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/integrations/behave/features/steps/swag_labs.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/integrations/behave/features/swag_labs.feature +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/integrations/brython/ReadMe.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/integrations/brython/index.html +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/integrations/brython/index.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/integrations/brython/library.html +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/integrations/docker/ReadMe.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/integrations/docker/docker-entrypoint.sh +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/integrations/docker/run_docker_test_in_chrome.sh +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/integrations/github/ReadMe.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/integrations/github/workflows/ReadMe.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/integrations/github/workflows/extras.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/integrations/google_cloud/ReadMe.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/integrations/katalon/ReadMe.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/integrations/linux/Linuxfile.sh +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/integrations/linux/ReadMe.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/integrations/linux/Xvfb_launcher.sh +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/integrations/linux/jenkins_permissions.sh +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/integrations/linux/tomcat_permissions.sh +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/integrations/node_js/ReadMe.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/integrations/node_js/__init__.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/integrations/node_js/index.html +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/integrations/node_js/my_first_test.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/integrations/node_js/npm-shrinkwrap.json +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/integrations/node_js/package.json +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/integrations/node_js/server.js +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/integrations/node_js/test_demo_site.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/integrations/selenium_grid/ReadMe.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/integrations/selenium_ide/ReadMe.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/mkdocs.yml +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/mkdocs_build/ReadMe.txt +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/mkdocs_build/docs_instructions.txt +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/mkdocs_build/img/dash_pie.png +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/mkdocs_build/img/dash_pie_2.png +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/mkdocs_build/img/dash_pie_3.png +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/mkdocs_build/img/favicon.ico +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/mkdocs_build/img/grad_logo.png +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/mkdocs_build/img/green_icon.png +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/mkdocs_build/img/green_logo.png +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/mkdocs_build/img/green_logo2.png +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/mkdocs_build/img/green_logo3.png +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/mkdocs_build/img/logo3.png +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/mkdocs_build/img/logo3a.png +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/mkdocs_build/img/logo3b.png +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/mkdocs_build/img/logo3c.png +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/mkdocs_build/img/logo4.png +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/mkdocs_build/img/logo5.png +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/mkdocs_build/img/logo6.png +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/mkdocs_build/img/logo7.png +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/mkdocs_build/img/sb_icon.png +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/mkdocs_build/img/sb_logo_10.png +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/mkdocs_build/img/sb_logo_7.png +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/mkdocs_build/img/side_by_side.png +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/mkdocs_build/img/social/share_facebook.svg +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/mkdocs_build/img/social/share_github.svg +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/mkdocs_build/img/social/share_gitter.svg +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/mkdocs_build/img/social/share_instagram.svg +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/mkdocs_build/img/social/share_twitter.svg +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/mkdocs_build/index.txt +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/mkdocs_build/prepare.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/pytest.ini +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/requirements.txt +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/sbase/ReadMe.txt +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/sbase/__init__.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/sbase/__main__.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/sbase/steps.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/ReadMe.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/__init__.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/__main__.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/behave/__init__.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/behave/behave_helper.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/behave/steps.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/common/ReadMe.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/common/__init__.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/common/decorators.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/common/encryption.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/common/exceptions.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/common/obfuscate.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/common/unobfuscate.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/config/__init__.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/config/ad_block_list.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/config/proxy_list.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/console_scripts/ReadMe.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/console_scripts/__init__.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/console_scripts/logo_helper.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/console_scripts/rich_helper.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/console_scripts/run.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/console_scripts/sb_behave_gui.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/console_scripts/sb_caseplans.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/console_scripts/sb_commander.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/console_scripts/sb_install.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/console_scripts/sb_mkchart.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/console_scripts/sb_mkdir.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/console_scripts/sb_mkfile.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/console_scripts/sb_mkpres.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/console_scripts/sb_mkrec.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/console_scripts/sb_objectify.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/console_scripts/sb_print.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/console_scripts/sb_recorder.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/core/__init__.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/core/application_manager.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/core/capabilities_parser.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/core/colored_traceback.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/core/create_db_tables.sql +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/core/detect_b_ver.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/core/download_helper.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/core/encoded_images.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/core/jqc_helper.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/core/log_helper.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/core/mysql.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/core/proxy_helper.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/core/recorder_helper.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/core/report_helper.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/core/s3_manager.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/core/sb_driver.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/core/session_helper.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/core/settings_parser.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/core/style_sheet.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/core/testcase_manager.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/core/tour_helper.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/core/visual_helper.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/drivers/ReadMe.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/drivers/__init__.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/extensions/ReadMe.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/extensions/__init__.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/extensions/ad_block.zip +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/extensions/disable_csp.zip +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/extensions/recorder.zip +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/extensions/sbase_ext.zip +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/fixtures/__init__.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/fixtures/constants.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/fixtures/css_to_xpath.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/fixtures/errors.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/fixtures/page_actions.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/fixtures/page_utils.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/fixtures/shared_utils.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/fixtures/unittest_helper.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/fixtures/words.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/fixtures/xpath_to_css.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/js_code/__init__.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/js_code/active_css_js.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/js_code/live_js.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/js_code/recorder_js.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/masterqa/ReadMe.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/masterqa/__init__.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/masterqa/master_qa.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/plugins/__init__.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/plugins/base_plugin.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/plugins/basic_test_info.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/plugins/db_reporting_plugin.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/plugins/driver_manager.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/plugins/page_source.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/plugins/s3_logging_plugin.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/plugins/screen_shots.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/resources/ReadMe.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/resources/__init__.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/resources/favicon.ico +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/translate/__init__.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/translate/chinese.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/translate/dutch.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/translate/french.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/translate/italian.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/translate/japanese.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/translate/korean.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/translate/master_dict.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/translate/portuguese.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/translate/russian.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/translate/spanish.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/translate/translator.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/undetected/__init__.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/undetected/cdp.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/undetected/dprocess.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/undetected/options.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/undetected/patcher.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/undetected/reactor.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/undetected/webelement.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/utilities/__init__.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/utilities/selenium_grid/ReadMe.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/utilities/selenium_grid/__init__.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/utilities/selenium_grid/download_selenium_server.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/utilities/selenium_grid/font_color +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/utilities/selenium_grid/grid-hub +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/utilities/selenium_grid/grid-node +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/utilities/selenium_grid/grid_hub.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/utilities/selenium_grid/grid_node.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/utilities/selenium_grid/register-grid-node.bat +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/utilities/selenium_grid/register-grid-node.sh +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/utilities/selenium_grid/start-grid-hub.bat +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/utilities/selenium_grid/start-grid-hub.sh +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/utilities/selenium_ide/ReadMe.md +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/utilities/selenium_ide/__init__.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase/utilities/selenium_ide/convert_ide.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase.egg-info/SOURCES.txt +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase.egg-info/dependency_links.txt +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase.egg-info/entry_points.txt +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase.egg-info/requires.txt +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/seleniumbase.egg-info/top_level.txt +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/setup.cfg +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/setup.py +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/virtualenv_install.sh +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/win_install.bat +0 -0
- {seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/win_virtualenv.bat +0 -0
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: seleniumbase
|
3
|
-
Version: 4.30.
|
3
|
+
Version: 4.30.5
|
4
4
|
Summary: A complete web automation framework for end-to-end testing.
|
5
5
|
Home-page: https://github.com/seleniumbase/SeleniumBase
|
6
6
|
Author: Michael Mintz
|
@@ -836,6 +836,7 @@ pytest test_coffee_cart.py --trace
|
|
836
836
|
--binary-location=PATH # (Set path of the Chromium browser binary to use.)
|
837
837
|
--driver-version=VER # (Set the chromedriver or uc_driver version to use.)
|
838
838
|
--sjw # (Skip JS Waits for readyState to be "complete" or Angular to load.)
|
839
|
+
--wfa # (Wait for AngularJS to be done loading after specific web actions.)
|
839
840
|
--pls=PLS # (Set pageLoadStrategy on Chrome: "normal", "eager", or "none".)
|
840
841
|
--headless # (Run tests in headless mode. The default arg on Linux OS.)
|
841
842
|
--headless2 # (Use the new headless mode, which supports extensions.)
|
@@ -651,6 +651,7 @@ pytest test_coffee_cart.py --trace
|
|
651
651
|
--binary-location=PATH # (Set path of the Chromium browser binary to use.)
|
652
652
|
--driver-version=VER # (Set the chromedriver or uc_driver version to use.)
|
653
653
|
--sjw # (Skip JS Waits for readyState to be "complete" or Angular to load.)
|
654
|
+
--wfa # (Wait for AngularJS to be done loading after specific web actions.)
|
654
655
|
--pls=PLS # (Set pageLoadStrategy on Chrome: "normal", "eager", or "none".)
|
655
656
|
--headless # (Run tests in headless mode. The default arg on Linux OS.)
|
656
657
|
--headless2 # (Use the new headless mode, which supports extensions.)
|
@@ -48,7 +48,7 @@ WAIT_FOR_RSC_ON_PAGE_LOADS = True
|
|
48
48
|
# Called after self.click(selector), NOT element.click()
|
49
49
|
WAIT_FOR_RSC_ON_CLICKS = False
|
50
50
|
# Wait for AngularJS calls to complete after various browser actions.
|
51
|
-
WAIT_FOR_ANGULARJS =
|
51
|
+
WAIT_FOR_ANGULARJS = False
|
52
52
|
# Skip ALL calls to wait_for_ready_state_complete() and wait_for_angularjs().
|
53
53
|
SKIP_JS_WAITS = False
|
54
54
|
|
@@ -131,10 +131,11 @@ class HackTests(BaseCase):
|
|
131
131
|
self.highlight("section.crayons-card", loops=7, scroll=False)
|
132
132
|
|
133
133
|
self.open("https://azure.microsoft.com/en-us/services/playfab/")
|
134
|
-
self.remove_elements('div[role="dialog"]')
|
135
134
|
self.set_text_content("h1", aybabtu)
|
136
135
|
self.set_text_content('a[aria-label*="Try Azure"]', ayb)
|
137
136
|
self.set_text_content('a[aria-label*="Sign in to"]', abtu)
|
137
|
+
self.remove_elements('div[role="dialog"]')
|
138
|
+
self.remove_elements('[aria-label*="Microsoft Survey"]')
|
138
139
|
self.highlight("h1", loops=6, scroll=False)
|
139
140
|
self.highlight('a[aria-label*="Try Azure"]', loops=4, scroll=False)
|
140
141
|
self.highlight('a[aria-label*="Sign in to"]', loops=6, scroll=False)
|
@@ -308,15 +309,6 @@ class HackTests(BaseCase):
|
|
308
309
|
self.highlight("h1", loops=6, scroll=False)
|
309
310
|
self.highlight("input#search", loops=8, scroll=False)
|
310
311
|
|
311
|
-
self.open("https://www.atlassian.com/software/jira")
|
312
|
-
self.set_text_content('a[href*="jira/pricing"]', ayb)
|
313
|
-
self.set_text_content('a[href*="jira/enterprise"]', abtu)
|
314
|
-
self.set_text_content('a[href="/software/jira/features"]', "")
|
315
|
-
self.set_text_content("h1", aybabtu)
|
316
|
-
self.highlight('a[href*="jira/pricing"]', loops=5, scroll=False)
|
317
|
-
self.highlight('a[href*="jira/enterprise"]', loops=6, scroll=False)
|
318
|
-
self.highlight("h1", loops=8, scroll=False)
|
319
|
-
|
320
312
|
self.open("https://status.iboss.com/ibcloud/app/cloudStatus.html")
|
321
313
|
self.wait_for_element_clickable('div[translate*="cloudStatus"]')
|
322
314
|
self.set_text_content('div[translate*="cloudStatus"]', ayb)
|
@@ -39,7 +39,7 @@ class TestGeolocation(BaseCase):
|
|
39
39
|
)
|
40
40
|
self.open("https://www.openstreetmap.org/")
|
41
41
|
self.click("span.geolocate")
|
42
|
-
self.assert_url_contains("48.
|
42
|
+
self.assert_url_contains("48.876450/2.263400")
|
43
43
|
self.save_screenshot_to_logs()
|
44
44
|
if self.headed:
|
45
45
|
self.sleep(4)
|
@@ -142,6 +142,7 @@ pytest my_first_test.py --settings-file=custom_settings.py
|
|
142
142
|
--binary-location=PATH # (Set path of the Chromium browser binary to use.)
|
143
143
|
--driver-version=VER # (Set the chromedriver or uc_driver version to use.)
|
144
144
|
--sjw # (Skip JS Waits for readyState to be "complete" or Angular to load.)
|
145
|
+
--wfa # (Wait for AngularJS to be done loading after specific web actions.)
|
145
146
|
--pls=PLS # (Set pageLoadStrategy on Chrome: "normal", "eager", or "none".)
|
146
147
|
--headless # (Run tests in headless mode. The default arg on Linux OS.)
|
147
148
|
--headless2 # (Use the new headless mode, which supports extensions.)
|
@@ -42,6 +42,7 @@ behave -D agent="User Agent String" -D demo
|
|
42
42
|
-D binary-location=PATH (Set path of the Chromium browser binary to use.)
|
43
43
|
-D driver-version=VER (Set the chromedriver or uc_driver version to use.)
|
44
44
|
-D sjw (Skip JS Waits for readyState to be "complete" or Angular to load.)
|
45
|
+
-D wfa (Wait for AngularJS to be done loading after specific web actions.)
|
45
46
|
-D pls=PLS (Set pageLoadStrategy on Chrome: "normal", "eager", or "none".)
|
46
47
|
-D headless (Run tests in headless mode. The default arg on Linux OS.)
|
47
48
|
-D headless2 (Use the new headless mode, which supports extensions.)
|
@@ -588,6 +589,10 @@ def get_configured_sb(context):
|
|
588
589
|
if low_key in ["sjw", "skip-js-waits", "skip_js_waits"]:
|
589
590
|
settings.SKIP_JS_WAITS = True
|
590
591
|
continue
|
592
|
+
# Handle: -D wfa / wait-for-angularjs / wait_for_angularjs
|
593
|
+
if low_key in ["wfa", "wait-for-angularjs", "wait_for_angularjs"]:
|
594
|
+
settings.WAIT_FOR_ANGULARJS = True
|
595
|
+
continue
|
591
596
|
# Handle: -D visual-baseline / visual_baseline
|
592
597
|
if low_key in ["visual-baseline", "visual_baseline"]:
|
593
598
|
sb.visual_baseline = True
|
@@ -889,6 +894,16 @@ def get_configured_sb(context):
|
|
889
894
|
# If the port is "443", the protocol is "https"
|
890
895
|
if str(sb.port) == "443":
|
891
896
|
sb.protocol = "https"
|
897
|
+
if (
|
898
|
+
(sb.enable_ws is None and sb.disable_ws is None)
|
899
|
+
or (sb.disable_ws is not None and not sb.disable_ws)
|
900
|
+
or (sb.enable_ws is not None and sb.enable_ws)
|
901
|
+
):
|
902
|
+
sb.enable_ws = True
|
903
|
+
sb.disable_ws = False
|
904
|
+
else:
|
905
|
+
sb.enable_ws = False
|
906
|
+
sb.disable_ws = True
|
892
907
|
if sb.window_size:
|
893
908
|
window_size = sb.window_size
|
894
909
|
if window_size.count(",") != 1:
|
@@ -75,7 +75,7 @@ WAIT_FOR_RSC_ON_PAGE_LOADS = True
|
|
75
75
|
# Called after self.click(selector), NOT element.click()
|
76
76
|
WAIT_FOR_RSC_ON_CLICKS = False
|
77
77
|
# Wait for AngularJS calls to complete after various browser actions.
|
78
|
-
WAIT_FOR_ANGULARJS =
|
78
|
+
WAIT_FOR_ANGULARJS = False
|
79
79
|
# Skip all calls to wait_for_ready_state_complete() and wait_for_angularjs().
|
80
80
|
SKIP_JS_WAITS = False
|
81
81
|
|
@@ -982,16 +982,19 @@ def _uc_gui_click_captcha(
|
|
982
982
|
_uc_gui_click_x_y(driver, x, y, timeframe=0.95)
|
983
983
|
except Exception:
|
984
984
|
pass
|
985
|
-
reconnect_time = (float(constants.UC.RECONNECT_TIME) / 2.0) + 0.
|
985
|
+
reconnect_time = (float(constants.UC.RECONNECT_TIME) / 2.0) + 0.6
|
986
986
|
if IS_LINUX:
|
987
|
-
reconnect_time = constants.UC.RECONNECT_TIME + 0.
|
987
|
+
reconnect_time = constants.UC.RECONNECT_TIME + 0.2
|
988
988
|
if not x or not y:
|
989
989
|
reconnect_time = 1 # Make it quick (it already failed)
|
990
990
|
driver.reconnect(reconnect_time)
|
991
|
-
|
992
|
-
|
991
|
+
caught = False
|
992
|
+
if driver.is_element_present(".footer .clearfix .ray-id"):
|
993
993
|
blind = True
|
994
|
-
|
994
|
+
caught = True
|
995
|
+
if blind:
|
996
|
+
retry = True
|
997
|
+
if retry and x and y and (caught or _on_a_captcha_page(driver)):
|
995
998
|
with gui_lock: # Prevent issues with multiple processes
|
996
999
|
# Make sure the window is on top
|
997
1000
|
page_actions.switch_to_window(
|
@@ -1056,11 +1059,7 @@ def uc_gui_click_cf(driver, frame="iframe", retry=False, blind=False):
|
|
1056
1059
|
)
|
1057
1060
|
|
1058
1061
|
|
1059
|
-
def
|
1060
|
-
driver,
|
1061
|
-
frame="iframe",
|
1062
|
-
ctype=None,
|
1063
|
-
):
|
1062
|
+
def _uc_gui_handle_captcha_(driver, frame="iframe", ctype=None):
|
1064
1063
|
if ctype == "cf_t":
|
1065
1064
|
if not _on_a_cf_turnstile_page(driver):
|
1066
1065
|
return
|
@@ -1202,12 +1201,19 @@ def _uc_gui_handle_captcha(
|
|
1202
1201
|
pyautogui.press(" ")
|
1203
1202
|
except Exception:
|
1204
1203
|
pass
|
1205
|
-
reconnect_time = (float(constants.UC.RECONNECT_TIME) / 2.0) + 0.
|
1204
|
+
reconnect_time = (float(constants.UC.RECONNECT_TIME) / 2.0) + 0.6
|
1206
1205
|
if IS_LINUX:
|
1207
|
-
reconnect_time = constants.UC.RECONNECT_TIME + 0.
|
1206
|
+
reconnect_time = constants.UC.RECONNECT_TIME + 0.2
|
1208
1207
|
driver.reconnect(reconnect_time)
|
1209
1208
|
|
1210
1209
|
|
1210
|
+
def _uc_gui_handle_captcha(driver, frame="iframe", ctype=None):
|
1211
|
+
_uc_gui_handle_captcha_(driver, frame=frame, ctype=ctype)
|
1212
|
+
if driver.is_element_present(".footer .clearfix .ray-id"):
|
1213
|
+
driver.uc_open_with_reconnect(driver.current_url, 3.8)
|
1214
|
+
_uc_gui_handle_captcha_(driver, frame=frame, ctype=ctype)
|
1215
|
+
|
1216
|
+
|
1211
1217
|
def uc_gui_handle_captcha(driver, frame="iframe"):
|
1212
1218
|
_uc_gui_handle_captcha(driver, frame=frame, ctype=None)
|
1213
1219
|
|
@@ -16071,7 +16071,10 @@ class BaseCase(unittest.TestCase):
|
|
16071
16071
|
try:
|
16072
16072
|
self.driver.window_handles
|
16073
16073
|
except Exception:
|
16074
|
-
|
16074
|
+
try:
|
16075
|
+
self.driver.connect()
|
16076
|
+
except Exception:
|
16077
|
+
pass
|
16075
16078
|
self.__slow_mode_pause_if_active()
|
16076
16079
|
has_exception = self.__has_exception()
|
16077
16080
|
sb_config._has_exception = has_exception
|
@@ -48,7 +48,7 @@ def wait_for_ready_state_complete(driver, timeout=settings.LARGE_TIMEOUT):
|
|
48
48
|
return False # readyState stayed "interactive" (Not "complete")
|
49
49
|
|
50
50
|
|
51
|
-
def execute_async_script(driver, script, timeout=settings.
|
51
|
+
def execute_async_script(driver, script, timeout=settings.LARGE_TIMEOUT):
|
52
52
|
driver.set_script_timeout(timeout)
|
53
53
|
return driver.execute_async_script(script)
|
54
54
|
|
@@ -56,11 +56,20 @@ def execute_async_script(driver, script, timeout=settings.EXTREME_TIMEOUT):
|
|
56
56
|
def wait_for_angularjs(driver, timeout=settings.LARGE_TIMEOUT, **kwargs):
|
57
57
|
if hasattr(settings, "SKIP_JS_WAITS") and settings.SKIP_JS_WAITS:
|
58
58
|
return
|
59
|
+
try:
|
60
|
+
# This closes pop-up alerts
|
61
|
+
driver.execute_script("")
|
62
|
+
except Exception:
|
63
|
+
pass
|
64
|
+
if hasattr(driver, "_is_using_uc") and driver._is_using_uc:
|
65
|
+
# Calling AngularJS waits may make UC Mode detectable.
|
66
|
+
# Instead, pause for a brief moment, and then return.
|
67
|
+
time.sleep(0.007)
|
68
|
+
return
|
59
69
|
if not settings.WAIT_FOR_ANGULARJS:
|
60
70
|
return
|
61
71
|
if timeout == settings.MINI_TIMEOUT:
|
62
|
-
timeout = settings.MINI_TIMEOUT /
|
63
|
-
|
72
|
+
timeout = settings.MINI_TIMEOUT / 4.0
|
64
73
|
NG_WRAPPER = (
|
65
74
|
"%(prefix)s"
|
66
75
|
"var $elm=document.querySelector("
|
@@ -84,15 +93,10 @@ def wait_for_angularjs(driver, timeout=settings.LARGE_TIMEOUT, **kwargs):
|
|
84
93
|
"handler": handler,
|
85
94
|
"suffix": suffix,
|
86
95
|
}
|
87
|
-
try:
|
88
|
-
# This closes any pop-up alerts (otherwise the next part fails)
|
89
|
-
driver.execute_script("")
|
90
|
-
except Exception:
|
91
|
-
pass
|
92
96
|
try:
|
93
97
|
execute_async_script(driver, script, timeout=timeout)
|
94
98
|
except Exception:
|
95
|
-
time.sleep(0.
|
99
|
+
time.sleep(0.0456)
|
96
100
|
|
97
101
|
|
98
102
|
def convert_to_css_selector(selector, by=By.CSS_SELECTOR):
|
@@ -59,6 +59,7 @@ def pytest_addoption(parser):
|
|
59
59
|
--binary-location=PATH (Set path of the Chromium browser binary to use.)
|
60
60
|
--driver-version=VER (Set the chromedriver or uc_driver version to use.)
|
61
61
|
--sjw (Skip JS Waits for readyState to be "complete" or Angular to load.)
|
62
|
+
--wfa (Wait for AngularJS to be done loading after specific web actions.)
|
62
63
|
--pls=PLS (Set pageLoadStrategy on Chrome: "normal", "eager", or "none".)
|
63
64
|
--headless (Run tests in headless mode. The default arg on Linux OS.)
|
64
65
|
--headless2 (Use the new headless mode, which supports extensions.)
|
@@ -358,6 +359,17 @@ def pytest_addoption(parser):
|
|
358
359
|
and wait_for_angularjs(), which are part of many
|
359
360
|
SeleniumBase methods for improving reliability.""",
|
360
361
|
)
|
362
|
+
parser.addoption(
|
363
|
+
"--wfa",
|
364
|
+
"--wait_for_angularjs",
|
365
|
+
"--wait-for-angularjs",
|
366
|
+
action="store_true",
|
367
|
+
dest="wait_for_angularjs",
|
368
|
+
default=False,
|
369
|
+
help="""Add waiting for AngularJS. (The default setting
|
370
|
+
was changed to no longer wait for AngularJS to
|
371
|
+
finish loading as an extra JavaScript call.)""",
|
372
|
+
)
|
361
373
|
parser.addoption(
|
362
374
|
"--with-db_reporting",
|
363
375
|
"--with-db-reporting",
|
@@ -1546,6 +1558,8 @@ def pytest_configure(config):
|
|
1546
1558
|
settings.ARCHIVE_EXISTING_DOWNLOADS = True
|
1547
1559
|
if config.getoption("skip_js_waits"):
|
1548
1560
|
settings.SKIP_JS_WAITS = True
|
1561
|
+
if config.getoption("wait_for_angularjs"):
|
1562
|
+
settings.WAIT_FOR_ANGULARJS = True
|
1549
1563
|
sb_config.all_scripts = config.getoption("all_scripts")
|
1550
1564
|
sb_config._time_limit = config.getoption("time_limit")
|
1551
1565
|
sb_config.time_limit = config.getoption("time_limit")
|
@@ -76,6 +76,7 @@ def SB(
|
|
76
76
|
binary_location=None, # Set path of the Chromium browser binary to use.
|
77
77
|
driver_version=None, # Set the chromedriver or uc_driver version to use.
|
78
78
|
skip_js_waits=None, # Skip JS Waits (readyState=="complete" and Angular).
|
79
|
+
wait_for_angularjs=None, # Wait for AngularJS to load after some actions.
|
79
80
|
use_wire=None, # Use selenium-wire's webdriver over selenium webdriver.
|
80
81
|
external_pdf=None, # Set Chrome "plugins.always_open_pdf_externally":True.
|
81
82
|
is_mobile=None, # Use the mobile device emulator while running tests.
|
@@ -109,6 +110,7 @@ def SB(
|
|
109
110
|
wire=None, # Shortcut / Duplicate of "use_wire".
|
110
111
|
pls=None, # Shortcut / Duplicate of "page_load_strategy".
|
111
112
|
sjw=None, # Shortcut / Duplicate of "skip_js_waits".
|
113
|
+
wfa=None, # Shortcut / Duplicate of "wait_for_angularjs".
|
112
114
|
save_screenshot=None, # Save a screenshot at the end of each test.
|
113
115
|
no_screenshot=None, # No screenshots saved unless tests directly ask it.
|
114
116
|
page_load_strategy=None, # Set Chrome PLS to "normal", "eager", or "none".
|
@@ -607,6 +609,17 @@ def SB(
|
|
607
609
|
settings.SKIP_JS_WAITS = True
|
608
610
|
elif skip_js_waits:
|
609
611
|
settings.SKIP_JS_WAITS = skip_js_waits
|
612
|
+
if wfa is not None and wait_for_angularjs is None:
|
613
|
+
wait_for_angularjs = wfa
|
614
|
+
if wait_for_angularjs is None:
|
615
|
+
if (
|
616
|
+
"--wfa" in sys_argv
|
617
|
+
or "--wait_for_angularjs" in sys_argv
|
618
|
+
or "--wait-for-angularjs" in sys_argv
|
619
|
+
):
|
620
|
+
settings.WAIT_FOR_ANGULARJS = True
|
621
|
+
elif wait_for_angularjs:
|
622
|
+
settings.WAIT_FOR_ANGULARJS = wait_for_angularjs
|
610
623
|
if save_screenshot is None:
|
611
624
|
if (
|
612
625
|
"--screenshot" in sys_argv
|
@@ -40,6 +40,7 @@ class SeleniumBrowser(Plugin):
|
|
40
40
|
--binary-location=PATH (Set path of the Chromium browser binary to use.)
|
41
41
|
--driver-version=VER (Set the chromedriver or uc_driver version to use.)
|
42
42
|
--sjw (Skip JS Waits for readyState to be "complete" or Angular to load.)
|
43
|
+
--wfa (Wait for AngularJS to be done loading after specific web actions.)
|
43
44
|
--pls=PLS (Set pageLoadStrategy on Chrome: "normal", "eager", or "none".)
|
44
45
|
--headless (Run tests in headless mode. The default arg on Linux OS.)
|
45
46
|
--headless2 (Use the new headless mode, which supports extensions.)
|
@@ -178,6 +179,17 @@ class SeleniumBrowser(Plugin):
|
|
178
179
|
and wait_for_angularjs(), which are part of many
|
179
180
|
SeleniumBase methods for improving reliability.""",
|
180
181
|
)
|
182
|
+
parser.addoption(
|
183
|
+
"--wfa",
|
184
|
+
"--wait_for_angularjs",
|
185
|
+
"--wait-for-angularjs",
|
186
|
+
action="store_true",
|
187
|
+
dest="wait_for_angularjs",
|
188
|
+
default=False,
|
189
|
+
help="""Add waiting for AngularJS. (The default setting
|
190
|
+
was changed to no longer wait for AngularJS to
|
191
|
+
finish loading as an extra JavaScript call.)""",
|
192
|
+
)
|
181
193
|
parser.addoption(
|
182
194
|
"--protocol",
|
183
195
|
action="store",
|
@@ -1105,6 +1117,8 @@ class SeleniumBrowser(Plugin):
|
|
1105
1117
|
test.test.start_page = self.options.start_page
|
1106
1118
|
if self.options.skip_js_waits:
|
1107
1119
|
settings.SKIP_JS_WAITS = True
|
1120
|
+
if self.options.wait_for_angularjs:
|
1121
|
+
settings.WAIT_FOR_ANGULARJS = True
|
1108
1122
|
test.test.protocol = self.options.protocol
|
1109
1123
|
test.test.servername = self.options.servername
|
1110
1124
|
test.test.port = self.options.port
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: seleniumbase
|
3
|
-
Version: 4.30.
|
3
|
+
Version: 4.30.5
|
4
4
|
Summary: A complete web automation framework for end-to-end testing.
|
5
5
|
Home-page: https://github.com/seleniumbase/SeleniumBase
|
6
6
|
Author: Michael Mintz
|
@@ -836,6 +836,7 @@ pytest test_coffee_cart.py --trace
|
|
836
836
|
--binary-location=PATH # (Set path of the Chromium browser binary to use.)
|
837
837
|
--driver-version=VER # (Set the chromedriver or uc_driver version to use.)
|
838
838
|
--sjw # (Skip JS Waits for readyState to be "complete" or Angular to load.)
|
839
|
+
--wfa # (Wait for AngularJS to be done loading after specific web actions.)
|
839
840
|
--pls=PLS # (Set pageLoadStrategy on Chrome: "normal", "eager", or "none".)
|
840
841
|
--headless # (Run tests in headless mode. The default arg on Linux OS.)
|
841
842
|
--headless2 # (Use the new headless mode, which supports extensions.)
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/behave_bdd/features/calculator.feature
RENAMED
File without changes
|
File without changes
|
{seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/behave_bdd/features/fail_page.feature
RENAMED
File without changes
|
{seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/behave_bdd/features/realworld.feature
RENAMED
File without changes
|
{seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/behave_bdd/features/steps/__init__.py
RENAMED
File without changes
|
{seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/behave_bdd/features/steps/calculator.py
RENAMED
File without changes
|
{seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/behave_bdd/features/steps/fail_page.py
RENAMED
File without changes
|
{seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/behave_bdd/features/steps/imported.py
RENAMED
File without changes
|
{seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/behave_bdd/features/steps/swag_labs.py
RENAMED
File without changes
|
{seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/behave_bdd/features/swag_labs.feature
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/boilerplates/samples/file_parsing/__init__.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/boilerplates/samples/google_objects.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
{seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/boilerplates/samples/swag_labs_test.py
RENAMED
File without changes
|
{seleniumbase-4.30.4a2 → seleniumbase-4.30.5}/examples/boilerplates/samples/test_page_objects.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|