seleniumbase 4.20.5__tar.gz → 4.20.7__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.20.5 → seleniumbase-4.20.7}/.github/workflows/python-nightly-mac.yml +2 -2
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/.github/workflows/python-nightly-ubuntu.yml +2 -2
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/.github/workflows/python-nightly-windows.yml +2 -2
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/.github/workflows/python-package.yml +1 -1
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/PKG-INFO +6 -6
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/edge_test.py +5 -1
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/presenter/ReadMe.md +39 -2
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/presenter/edge_presentation.py +44 -147
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/presenter/fundamentals.py +27 -124
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/test_repeat_tests.py +14 -9
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/help_docs/desired_capabilities.md +3 -4
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/help_docs/happy_customers.md +1 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/help_docs/mysql_installation.md +1 -1
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/help_docs/syntax_formats.md +8 -8
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/help_docs/using_safari_driver.md +1 -1
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/help_docs/verify_webdriver.md +0 -1
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/mkdocs_build/requirements.txt +1 -1
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/requirements.txt +4 -4
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/__version__.py +1 -1
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/config/proxy_list.py +3 -3
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/core/browser_launcher.py +13 -5
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/fixtures/base_case.py +114 -21
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/fixtures/constants.py +1 -1
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase.egg-info/PKG-INFO +6 -6
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase.egg-info/requires.txt +5 -5
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/setup.py +5 -5
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/.github/Workflows.md +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/.github/workflows/pages.yml +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/.gitignore +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/CHANGELOG.md +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/CNAME +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/CODE_OF_CONDUCT.md +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/CONTRIBUTING.md +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/Dockerfile +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/LICENSE +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/MANIFEST.in +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/README.md +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/SECURITY.md +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/_config.yml +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/azure-pipelines.yml +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/ReadMe.md +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/__init__.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/basic_test.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/behave_bdd/ReadMe.md +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/behave_bdd/__init__.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/behave_bdd/behave.ini +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/behave_bdd/features/__init__.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/behave_bdd/features/behave.ini +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/behave_bdd/features/calculator.feature +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/behave_bdd/features/environment.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/behave_bdd/features/fail_page.feature +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/behave_bdd/features/realworld.feature +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/behave_bdd/features/steps/__init__.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/behave_bdd/features/steps/calculator.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/behave_bdd/features/steps/fail_page.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/behave_bdd/features/steps/imported.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/behave_bdd/features/steps/swag_labs.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/behave_bdd/features/swag_labs.feature +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/boilerplates/ReadMe.md +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/boilerplates/__init__.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/boilerplates/base_test_case.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/boilerplates/boilerplate_test.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/boilerplates/classic_obj_test.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/boilerplates/page_objects.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/boilerplates/samples/__init__.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/boilerplates/samples/file_parsing/__init__.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/boilerplates/samples/file_parsing/parse_files.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/boilerplates/samples/file_parsing/qa_login_example.txt +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/boilerplates/samples/file_parsing/staging_login_example.txt +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/boilerplates/samples/google_objects.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/boilerplates/samples/google_test.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/boilerplates/samples/sb_swag_test.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/boilerplates/samples/swag_labs_test.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/boilerplates/samples/test_page_objects.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/boilerplates/sb_fixture_test.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/capabilities/ReadMe.md +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/capabilities/mac_cap_file.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/capabilities/sample_cap_file_BS.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/capabilities/sample_cap_file_SL.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/capabilities/selenoid_cap_file.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/capabilities/win10_cap_file.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/case_plans/basic_test.MyTestClass.test_basics.md +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/case_plans/my_first_test.MyTestClass.test_swag_labs.md +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/case_plans/shadow_root_test.ShadowRootTest.test_shadow_root.md +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/case_plans/test_assert_elements.ListAssertTests.test_assert_list_of_elements.md +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/case_plans/test_calculator.CalculatorTests.test_6_times_7_plus_12_equals_54.md +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/case_plans/test_demo_site.DemoSiteTests.test_demo_site.md +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/case_plans/test_login.SwagLabsLoginTests.test_swag_labs_login.md +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/case_plans/test_mfa_login.TestMFALogin.test_mfa_login.md +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/case_summary.md +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/chart_maker/ReadMe.md +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/chart_maker/chart_presentation.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/chart_maker/my_chart.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/chart_maker/pie_charts.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/chart_maker/test_area_chart.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/chart_maker/test_display_chart.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/chart_maker/test_line_chart.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/chart_maker/test_multi_series.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/chart_maker/test_save_chart.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/coffee_cart_tests.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/custom_settings.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/desktop_apps/ReadMe.md +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/desktop_apps/recorder.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/dialog_boxes/ReadMe.md +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/dialog_boxes/dialog_box_tour.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/example_config.cfg +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/example_logs/ReadMe.md +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/example_logs/basic_test_info.txt +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/example_logs/page_source.html +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/example_logs/screenshot.png +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/github_test.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/gui_test_runner.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/hack_the_planet.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/handle_alert_test.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/iframe_tests.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/locale_code_test.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/master_qa/ReadMe.md +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/master_qa/__init__.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/master_qa/basic_masterqa_test_0.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/master_qa/masterqa_test_1.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/master_qa/pytest.ini +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/migration/__init__.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/migration/protractor/ReadMe.md +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/migration/protractor/__init__.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/migration/protractor/example_spec.js +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/migration/protractor/example_test.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/migration/protractor/input_spec.js +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/migration/protractor/input_test.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/migration/protractor/mat_paginator_spec.js +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/migration/protractor/mat_paginator_test.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/migration/raw_selenium/ReadMe.md +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/migration/raw_selenium/__init__.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/migration/raw_selenium/flaky_messy_raw.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/migration/raw_selenium/long_messy_raw.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/migration/raw_selenium/messy_raw.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/migration/raw_selenium/pytest.ini +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/migration/raw_selenium/refined_raw.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/migration/raw_selenium/simple_sbase.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/my_first_test.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/nth_child_test.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/offline_examples/__init__.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/offline_examples/demo_page.html +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/offline_examples/load_html_test.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/offline_examples/test_demo_page.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/offline_examples/test_handle_alerts.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/offline_examples/test_request_fixture.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/offline_examples/test_user_agent.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/old_wordle_script.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/parameterized_test.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/performance_test.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/presenter/core_presentation.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/presenter/my_presentation.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/presenter/py_virtual_envs.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/proxy_test.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/pytest.ini +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/rate_limiting_test.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/raw_browser_launcher.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/raw_call.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/raw_driver_context.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/raw_file_call.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/raw_main_call.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/raw_parameter_script.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/raw_sb.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/raw_test_scripts.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/raw_uc_mode.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/setup.cfg +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/shadow_root_test.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/swag_labs_user_tests.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/test_apple_site.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/test_assert_elements.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/test_calculator.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/test_canvas.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/test_checkboxes.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/test_chinese_pdf.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/test_chromedriver.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/test_coffee_cart.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/test_console_logging.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/test_contains_selector.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/test_cycle_elements.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/test_decryption.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/test_deferred_asserts.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/test_demo_site.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/test_detect_404s.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/test_docs_site.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/test_double_click.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/test_download_files.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/test_download_images.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/test_drag_and_drop.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/test_error_page.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/test_event_firing.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/test_fail.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/test_geolocation.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/test_get_coffee.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/test_get_locale_code.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/test_get_pdf_text.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/test_get_user_agent.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/test_hack_search.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/test_image_saving.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/test_inspect_html.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/test_login.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/test_markers.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/test_mfa_login.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/test_multiple_drivers.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/test_null.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/test_override_driver.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/test_override_sb_fixture.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/test_parse_soup.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/test_pdf_asserts.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/test_pytest_parametrize.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/test_request_sb_fixture.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/test_save_screenshots.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/test_sb_fixture.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/test_scrape_bing.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/test_select_options.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/test_shadow_dom.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/test_show_file_choosers.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/test_skype_site.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/test_suite.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/test_swag_labs.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/test_tinymce.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/test_todomvc.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/test_url_asserts.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/test_usefixtures.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/test_verify_chromedriver.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/test_window_switching.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/test_xfail.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/test_xkcd.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/time_limit_test.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/tour_examples/ReadMe.md +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/tour_examples/bootstrap_google_tour.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/tour_examples/bootstrap_xkcd_tour.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/tour_examples/driverjs_maps_tour.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/tour_examples/google_tour.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/tour_examples/hopscotch_google_tour.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/tour_examples/introjs_google_tour.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/tour_examples/maps_introjs_tour.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/tour_examples/octocat_tour.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/tour_examples/shepherd_google_tour.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/tour_examples/xkcd_tour.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/translations/ReadMe.md +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/translations/chinese_test_1.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/translations/dutch_test_1.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/translations/english_test_1.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/translations/french_test_1.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/translations/italian_test_1.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/translations/japanese_test_1.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/translations/korean_test_1.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/translations/portuguese_test_1.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/translations/pytest.ini +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/translations/russian_test_1.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/translations/spanish_test_1.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/uc_cdp_events.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/unit_tests/ReadMe.md +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/unit_tests/verify_framework.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/upgrade_chromedriver.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/upload_file_test.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/user_agent_test.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/verify_undetected.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/visual_testing/ReadMe.md +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/visual_testing/__init__.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/visual_testing/case_plans/layout_test.VisualLayoutTests.test_applitools_layout_change.md +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/visual_testing/case_plans/python_home_test.VisualLayoutTests.test_python_home_layout_change.md +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/visual_testing/case_plans/test_layout_fail.VisualLayoutFailureTests.test_applitools_change.md +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/visual_testing/case_plans/test_layout_fail.VisualLayoutFailureTests.test_xkcd_logo_change.md +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/visual_testing/case_plans/test_layout_fail.VisualLayout_FixtureTests.test_python_home_change.md +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/visual_testing/case_plans/xkcd_visual_test.VisualLayoutTests.test_xkcd_layout_change.md +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/visual_testing/layout_test.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/visual_testing/python_home_test.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/visual_testing/test_layout_fail.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/visual_testing/xkcd_visual_test.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/wordle_test.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/xpath_test.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/examples/youtube_search_test.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/help_docs/ReadMe.md +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/help_docs/behave_gui.md +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/help_docs/case_plans.md +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/help_docs/chinese.md +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/help_docs/commander.md +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/help_docs/customizing_test_runs.md +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/help_docs/demo_mode.md +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/help_docs/features_list.md +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/help_docs/handling_iframes.md +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/help_docs/hidden_files_info.md +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/help_docs/how_it_works.md +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/help_docs/html_inspector.md +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/help_docs/install.md +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/help_docs/install_python_pip_git.md +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/help_docs/js_package_manager.md +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/help_docs/locale_codes.md +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/help_docs/method_summary.md +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/help_docs/mobile_testing.md +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/help_docs/recorder_mode.md +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/help_docs/shadow_dom.md +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/help_docs/thank_you.md +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/help_docs/translations.md +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/help_docs/useful_grep_commands.md +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/help_docs/virtualenv_instructions.md +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/help_docs/webdriver_installation.md +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/install.sh +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/integrations/__init__.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/integrations/azure/azure_pipelines/ReadMe.md +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/integrations/azure/jenkins/ReadMe.md +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/integrations/behave/ReadMe.md +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/integrations/behave/behave.ini +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/integrations/behave/features/__init__.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/integrations/behave/features/behave.ini +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/integrations/behave/features/calculator.feature +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/integrations/behave/features/environment.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/integrations/behave/features/fail_page.feature +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/integrations/behave/features/realworld.feature +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/integrations/behave/features/steps/__init__.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/integrations/behave/features/steps/calculator.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/integrations/behave/features/steps/fail_page.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/integrations/behave/features/steps/real_world.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/integrations/behave/features/steps/swag_labs.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/integrations/behave/features/swag_labs.feature +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/integrations/brython/ReadMe.md +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/integrations/brython/index.html +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/integrations/brython/index.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/integrations/brython/library.html +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/integrations/docker/ReadMe.md +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/integrations/docker/docker-entrypoint.sh +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/integrations/docker/docker_config.cfg +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/integrations/docker/run_docker_test_in_chrome.sh +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/integrations/docker/run_docker_test_in_firefox.sh +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/integrations/github/ReadMe.md +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/integrations/github/workflows/ReadMe.md +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/integrations/github/workflows/extras.md +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/integrations/google_cloud/ReadMe.md +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/integrations/katalon/ReadMe.md +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/integrations/linux/Linuxfile.sh +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/integrations/linux/ReadMe.md +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/integrations/linux/Xvfb_launcher.sh +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/integrations/linux/jenkins_permissions.sh +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/integrations/linux/tomcat_permissions.sh +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/integrations/node_js/ReadMe.md +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/integrations/node_js/__init__.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/integrations/node_js/index.html +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/integrations/node_js/my_first_test.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/integrations/node_js/npm-shrinkwrap.json +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/integrations/node_js/package.json +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/integrations/node_js/server.js +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/integrations/node_js/test_demo_site.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/integrations/selenium_grid/ReadMe.md +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/integrations/selenium_ide/ReadMe.md +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/mkdocs.yml +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/mkdocs_build/ReadMe.txt +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/mkdocs_build/docs_instructions.txt +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/mkdocs_build/img/dash_pie.png +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/mkdocs_build/img/dash_pie_2.png +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/mkdocs_build/img/dash_pie_3.png +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/mkdocs_build/img/favicon.ico +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/mkdocs_build/img/grad_logo.png +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/mkdocs_build/img/green_icon.png +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/mkdocs_build/img/green_logo.png +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/mkdocs_build/img/green_logo2.png +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/mkdocs_build/img/green_logo3.png +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/mkdocs_build/img/logo3.png +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/mkdocs_build/img/logo3a.png +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/mkdocs_build/img/logo3b.png +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/mkdocs_build/img/logo3c.png +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/mkdocs_build/img/logo4.png +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/mkdocs_build/img/logo5.png +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/mkdocs_build/img/logo6.png +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/mkdocs_build/img/logo7.png +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/mkdocs_build/img/sb_icon.png +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/mkdocs_build/img/sb_logo_10.png +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/mkdocs_build/img/sb_logo_7.png +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/mkdocs_build/img/side_by_side.png +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/mkdocs_build/img/social/share_facebook.svg +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/mkdocs_build/img/social/share_github.svg +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/mkdocs_build/img/social/share_gitter.svg +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/mkdocs_build/img/social/share_instagram.svg +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/mkdocs_build/img/social/share_twitter.svg +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/mkdocs_build/index.txt +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/mkdocs_build/prepare.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/pytest.ini +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/sbase/ReadMe.txt +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/sbase/__init__.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/sbase/__main__.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/sbase/steps.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/ReadMe.md +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/__init__.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/__main__.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/behave/__init__.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/behave/behave_helper.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/behave/behave_sb.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/behave/steps.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/common/ReadMe.md +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/common/__init__.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/common/decorators.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/common/encryption.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/common/exceptions.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/common/obfuscate.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/common/unobfuscate.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/config/__init__.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/config/ad_block_list.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/config/settings.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/console_scripts/ReadMe.md +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/console_scripts/__init__.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/console_scripts/logo_helper.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/console_scripts/rich_helper.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/console_scripts/run.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/console_scripts/sb_behave_gui.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/console_scripts/sb_caseplans.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/console_scripts/sb_commander.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/console_scripts/sb_install.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/console_scripts/sb_mkchart.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/console_scripts/sb_mkdir.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/console_scripts/sb_mkfile.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/console_scripts/sb_mkpres.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/console_scripts/sb_mkrec.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/console_scripts/sb_objectify.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/console_scripts/sb_print.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/console_scripts/sb_recorder.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/core/__init__.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/core/application_manager.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/core/capabilities_parser.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/core/colored_traceback.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/core/create_db_tables.sql +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/core/detect_b_ver.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/core/download_helper.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/core/encoded_images.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/core/jqc_helper.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/core/log_helper.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/core/mysql.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/core/proxy_helper.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/core/recorder_helper.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/core/report_helper.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/core/s3_manager.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/core/sb_driver.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/core/session_helper.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/core/settings_parser.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/core/style_sheet.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/core/testcase_manager.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/core/tour_helper.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/core/visual_helper.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/drivers/ReadMe.md +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/drivers/__init__.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/extensions/ReadMe.md +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/extensions/__init__.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/extensions/ad_block.zip +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/extensions/disable_csp.zip +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/extensions/recorder.zip +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/extensions/sbase_ext.zip +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/fixtures/__init__.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/fixtures/css_to_xpath.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/fixtures/errors.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/fixtures/js_utils.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/fixtures/page_actions.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/fixtures/page_utils.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/fixtures/shared_utils.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/fixtures/unittest_helper.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/fixtures/words.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/fixtures/xpath_to_css.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/js_code/__init__.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/js_code/active_css_js.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/js_code/live_js.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/js_code/recorder_js.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/masterqa/ReadMe.md +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/masterqa/__init__.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/masterqa/master_qa.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/plugins/__init__.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/plugins/base_plugin.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/plugins/basic_test_info.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/plugins/db_reporting_plugin.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/plugins/driver_manager.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/plugins/page_source.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/plugins/pytest_plugin.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/plugins/s3_logging_plugin.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/plugins/sb_manager.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/plugins/screen_shots.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/plugins/selenium_plugin.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/resources/ReadMe.md +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/resources/__init__.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/resources/favicon.ico +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/translate/__init__.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/translate/chinese.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/translate/dutch.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/translate/french.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/translate/italian.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/translate/japanese.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/translate/korean.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/translate/master_dict.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/translate/portuguese.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/translate/russian.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/translate/spanish.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/translate/translator.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/undetected/__init__.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/undetected/cdp.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/undetected/dprocess.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/undetected/options.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/undetected/patcher.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/undetected/reactor.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/undetected/webelement.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/utilities/__init__.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/utilities/selenium_grid/ReadMe.md +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/utilities/selenium_grid/__init__.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/utilities/selenium_grid/download_selenium_server.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/utilities/selenium_grid/font_color +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/utilities/selenium_grid/grid-hub +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/utilities/selenium_grid/grid-node +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/utilities/selenium_grid/grid_hub.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/utilities/selenium_grid/grid_node.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/utilities/selenium_grid/register-grid-node.bat +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/utilities/selenium_grid/register-grid-node.sh +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/utilities/selenium_grid/start-grid-hub.bat +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/utilities/selenium_grid/start-grid-hub.sh +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/utilities/selenium_ide/ReadMe.md +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/utilities/selenium_ide/__init__.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase/utilities/selenium_ide/convert_ide.py +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase.egg-info/SOURCES.txt +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase.egg-info/dependency_links.txt +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase.egg-info/entry_points.txt +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/seleniumbase.egg-info/top_level.txt +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/setup.cfg +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/virtualenv_install.sh +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/win_install.bat +0 -0
- {seleniumbase-4.20.5 → seleniumbase-4.20.7}/win_virtualenv.bat +0 -0
@@ -16,10 +16,10 @@ jobs:
|
|
16
16
|
fail-fast: false
|
17
17
|
max-parallel: 6
|
18
18
|
matrix:
|
19
|
-
python-version: ["3.7", "3.8", "3.9", "3.10", "3.11"]
|
19
|
+
python-version: ["3.7", "3.8", "3.9", "3.10", "3.11", "3.12"]
|
20
20
|
|
21
21
|
steps:
|
22
|
-
- uses: actions/checkout@
|
22
|
+
- uses: actions/checkout@v4
|
23
23
|
- name: Set up Python ${{ matrix.python-version }}
|
24
24
|
uses: actions/setup-python@v4
|
25
25
|
with:
|
@@ -16,10 +16,10 @@ jobs:
|
|
16
16
|
fail-fast: false
|
17
17
|
max-parallel: 6
|
18
18
|
matrix:
|
19
|
-
python-version: ["3.7", "3.8", "3.9", "3.10", "3.11"]
|
19
|
+
python-version: ["3.7", "3.8", "3.9", "3.10", "3.11", "3.12"]
|
20
20
|
|
21
21
|
steps:
|
22
|
-
- uses: actions/checkout@
|
22
|
+
- uses: actions/checkout@v4
|
23
23
|
- name: Set up Python ${{ matrix.python-version }}
|
24
24
|
uses: actions/setup-python@v4
|
25
25
|
with:
|
@@ -16,10 +16,10 @@ jobs:
|
|
16
16
|
fail-fast: false
|
17
17
|
max-parallel: 6
|
18
18
|
matrix:
|
19
|
-
python-version: ["3.7", "3.8", "3.9", "3.10", "3.11"]
|
19
|
+
python-version: ["3.7", "3.8", "3.9", "3.10", "3.11", "3.12"]
|
20
20
|
|
21
21
|
steps:
|
22
|
-
- uses: actions/checkout@
|
22
|
+
- uses: actions/checkout@v4
|
23
23
|
- name: Set up Python ${{ matrix.python-version }}
|
24
24
|
uses: actions/setup-python@v4
|
25
25
|
with:
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: seleniumbase
|
3
|
-
Version: 4.20.
|
3
|
+
Version: 4.20.7
|
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
|
@@ -55,7 +55,7 @@ Classifier: Topic :: Utilities
|
|
55
55
|
Requires-Python: >=3.7
|
56
56
|
Description-Content-Type: text/markdown
|
57
57
|
License-File: LICENSE
|
58
|
-
Requires-Dist: pip>=23.3
|
58
|
+
Requires-Dist: pip>=23.3.1
|
59
59
|
Requires-Dist: packaging>=23.2
|
60
60
|
Requires-Dist: setuptools>=68.0.0; python_version < "3.8"
|
61
61
|
Requires-Dist: setuptools>=68.2.2; python_version >= "3.8"
|
@@ -70,14 +70,14 @@ Requires-Dist: parse-type>=0.6.2
|
|
70
70
|
Requires-Dist: six==1.16.0
|
71
71
|
Requires-Dist: idna==3.4
|
72
72
|
Requires-Dist: chardet==5.2.0
|
73
|
-
Requires-Dist: charset-normalizer==3.3.
|
73
|
+
Requires-Dist: charset-normalizer==3.3.1
|
74
74
|
Requires-Dist: urllib3<2,>=1.26.18; python_version < "3.10"
|
75
75
|
Requires-Dist: urllib3<2.1.0,>=1.26.18; python_version >= "3.10"
|
76
76
|
Requires-Dist: requests==2.31.0
|
77
77
|
Requires-Dist: pynose==1.4.8
|
78
78
|
Requires-Dist: sniffio==1.3.0
|
79
79
|
Requires-Dist: h11==0.14.0
|
80
|
-
Requires-Dist: outcome==1.3.0
|
80
|
+
Requires-Dist: outcome==1.3.0.post0
|
81
81
|
Requires-Dist: trio==0.22.2
|
82
82
|
Requires-Dist: trio-websocket==0.11.1
|
83
83
|
Requires-Dist: wsproto==1.2.0
|
@@ -91,7 +91,7 @@ Requires-Dist: iniconfig==2.0.0
|
|
91
91
|
Requires-Dist: pluggy==1.2.0; python_version < "3.8"
|
92
92
|
Requires-Dist: pluggy==1.3.0; python_version >= "3.8"
|
93
93
|
Requires-Dist: py==1.11.0
|
94
|
-
Requires-Dist: pytest==7.4.
|
94
|
+
Requires-Dist: pytest==7.4.3
|
95
95
|
Requires-Dist: pytest-html==2.0.1
|
96
96
|
Requires-Dist: pytest-metadata==3.0.0
|
97
97
|
Requires-Dist: pytest-ordering==0.6
|
@@ -136,7 +136,7 @@ Requires-Dist: ipython==7.34.0; extra == "ipdb"
|
|
136
136
|
Provides-Extra: pdfminer
|
137
137
|
Requires-Dist: pdfminer.six==20221105; extra == "pdfminer"
|
138
138
|
Requires-Dist: cryptography==39.0.2; python_version < "3.9" and extra == "pdfminer"
|
139
|
-
Requires-Dist: cryptography==41.0.
|
139
|
+
Requires-Dist: cryptography==41.0.5; python_version >= "3.9" and extra == "pdfminer"
|
140
140
|
Requires-Dist: cffi==1.15.1; python_version < "3.8" and extra == "pdfminer"
|
141
141
|
Requires-Dist: cffi==1.16.0; python_version >= "3.8" and extra == "pdfminer"
|
142
142
|
Requires-Dist: pycparser==2.21; extra == "pdfminer"
|
@@ -23,5 +23,9 @@ class EdgeTests(BaseCase):
|
|
23
23
|
self.assert_text("Microsoft Edge", 'img[srcset*="logo"] + div')
|
24
24
|
self.highlight('img[srcset*="logo"] + div span:nth-of-type(1)')
|
25
25
|
self.highlight('img[srcset*="logo"] + div span:nth-of-type(2)')
|
26
|
-
self.
|
26
|
+
if self.is_element_visible('span[aria-live="assertive"]'):
|
27
|
+
self.highlight('span[aria-live="assertive"]', loops=8)
|
28
|
+
elif self.is_element_visible('a[href*="fwlink"]'):
|
29
|
+
self.highlight('a[href*="fwlink"]', loops=8)
|
27
30
|
self.highlight('a[href*="chromium"]')
|
31
|
+
self.highlight('a[href*="credits"]')
|
@@ -36,7 +36,6 @@ cd examples/presenter
|
|
36
36
|
pytest core_presentation.py
|
37
37
|
```
|
38
38
|
|
39
|
-
|
40
39
|
<h3><img src="https://seleniumbase.github.io/img/logo6.png" title="SeleniumBase" width="24" /> Creating a new presentation:</h3>
|
41
40
|
|
42
41
|
```python
|
@@ -59,7 +58,6 @@ If creating multiple presentations at the same time, you can pass the ``name`` p
|
|
59
58
|
Notes are disabled by default. You can enable notes by specifying:
|
60
59
|
``show_notes=True``
|
61
60
|
|
62
|
-
|
63
61
|
<h3><img src="https://seleniumbase.github.io/img/logo6.png" title="SeleniumBase" width="24" /> Adding a slide to a presentation:</h3>
|
64
62
|
|
65
63
|
```python
|
@@ -243,6 +241,45 @@ Presentations automatically get saved when calling:
|
|
243
241
|
self.begin_presentation(show_notes=True)
|
244
242
|
```
|
245
243
|
|
244
|
+
<h3><img src="https://seleniumbase.github.io/img/logo6.png" title="SeleniumBase" width="24" /> Special abilities:</h3>
|
245
|
+
|
246
|
+
If you want to highlight multiple lines at different times in the same slide with the `<mark>` / `</mark>` tags, you can use the new `<mk-0>`-`</mk-0>`, `<mk-1>`-`</mk-1>` tags, which will generate multiple HTML slides from one Python slide.
|
247
|
+
|
248
|
+
Example:
|
249
|
+
|
250
|
+
```python
|
251
|
+
self.add_slide(
|
252
|
+
code=(
|
253
|
+
<p><mk-0>Highlight this on the 1st generated slide</mk-0></p>
|
254
|
+
<p><mk-1>Highlight this on the 2nd generated slide</mk-1></p>
|
255
|
+
<p><mk-2>Highlight this on the 3rd generated slide</mk-2></p>
|
256
|
+
<p><mk-3>Highlight this on the 4th generated slide</mk-3></p>
|
257
|
+
)
|
258
|
+
)
|
259
|
+
```
|
260
|
+
|
261
|
+
Those should automatically get converted to `<mark>` ... `</mark>` on their turn:
|
262
|
+
|
263
|
+
Eg. First generated slide:
|
264
|
+
|
265
|
+
```html
|
266
|
+
<p><mark>Highlight this on the first generated slide</mark></p>
|
267
|
+
<p>Highlight this on the second generated slide</p>
|
268
|
+
<p>Highlight this on the third generated slide</p>
|
269
|
+
<p>Highlight this on the fourth generated slide></p>
|
270
|
+
```
|
271
|
+
|
272
|
+
Eg. Second generated slide:
|
273
|
+
|
274
|
+
```html
|
275
|
+
<p>Highlight this on the first generated slide</p>
|
276
|
+
<p><mark>Highlight this on the second generated slide</mark></p>
|
277
|
+
<p>Highlight this on the third generated slide</p>
|
278
|
+
<p>Highlight this on the fourth generated slide></p>
|
279
|
+
```
|
280
|
+
|
281
|
+
Etc...
|
282
|
+
|
246
283
|
--------
|
247
284
|
|
248
285
|
<h3 align="left"><img src="https://seleniumbase.github.io/cdn/img/sb_logo_b.png" alt="SeleniumBase" width="240" /></h3>
|
@@ -25,17 +25,22 @@ class EdgePresentationClass(BaseCase):
|
|
25
25
|
self.open("data:,")
|
26
26
|
self.open("https://www.bostoncodecamp.com/CC34/Schedule/SessionGrid")
|
27
27
|
self.highlight("h2", loops=8)
|
28
|
-
self.
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
28
|
+
if self.is_element_visible('[data-sessionid="467776"]'):
|
29
|
+
self.highlight('div[data-sessionid="467776"]', loops=10)
|
30
|
+
self.create_tour(theme="driverjs")
|
31
|
+
self.add_tour_step(
|
32
|
+
"<h2>Here we are</h2>", '[data-sessionid="467776"]'
|
33
|
+
)
|
34
|
+
self.play_tour()
|
35
|
+
self.click('a[onclick*="467776"]')
|
36
|
+
self.create_tour(theme="hopscotch")
|
37
|
+
self.add_tour_step(
|
38
|
+
"<h2>What to expect</h2>",
|
39
|
+
"div.sz-modal-session",
|
40
|
+
alignment="left",
|
41
|
+
)
|
42
|
+
self.play_tour()
|
43
|
+
self.sleep(0.25)
|
39
44
|
self.open("data:,")
|
40
45
|
self.create_presentation(theme="sky", transition="fade")
|
41
46
|
self.add_slide(
|
@@ -129,8 +134,12 @@ class EdgePresentationClass(BaseCase):
|
|
129
134
|
self.highlight(
|
130
135
|
'img[srcset*="logo"] + div span:nth-of-type(2)', loops=16
|
131
136
|
)
|
132
|
-
self.
|
137
|
+
if self.is_element_visible('span[aria-live="assertive"]'):
|
138
|
+
self.highlight('span[aria-live="assertive"]', loops=8)
|
139
|
+
elif self.is_element_visible('a[href*="fwlink"]'):
|
140
|
+
self.highlight('a[href*="fwlink"]', loops=8)
|
133
141
|
self.highlight('a[href*="chromium"]')
|
142
|
+
self.highlight('a[href*="credits"]')
|
134
143
|
self.quit_extra_driver()
|
135
144
|
|
136
145
|
self.switch_to_default_driver()
|
@@ -226,96 +235,16 @@ class EdgePresentationClass(BaseCase):
|
|
226
235
|
"<p>What are some building blocks?</p>\n"
|
227
236
|
"<hr /><br />\n",
|
228
237
|
code=(
|
229
|
-
"<
|
230
|
-
"driver = webdriver.Edge()
|
231
|
-
'driver.get("http://selenium.dev")
|
232
|
-
"element = driver.find_element"
|
233
|
-
'("css selector", "#docsearch span")\n\n'
|
234
|
-
"element.click()\n\n"
|
235
|
-
"elem_2 = driver.find_element"
|
236
|
-
'("css selector", "#docsearch-input")\n\n'
|
237
|
-
'elem_2.send_keys("Python")\n\n'
|
238
|
-
"driver.quit()\n\n"
|
239
|
-
),
|
240
|
-
)
|
241
|
-
self.add_slide(
|
242
|
-
"<p>What are some building blocks?</p>\n"
|
243
|
-
"<hr /><br />\n",
|
244
|
-
code=(
|
245
|
-
"from selenium import webdriver\n\n"
|
246
|
-
"<mark>driver = webdriver.Edge()</mark>\n\n"
|
247
|
-
'driver.get("http://selenium.dev")\n\n'
|
248
|
-
"element = driver.find_element"
|
238
|
+
"<mk-0>from selenium import webdriver</mk-0>\n\n"
|
239
|
+
"<mk-1>driver = webdriver.Edge()</mk-1>\n\n"
|
240
|
+
'<mk-2>driver.get("http://selenium.dev")</mk-2>\n\n'
|
241
|
+
"<mk-3>element = driver.find_element"
|
249
242
|
'("css selector", "#docsearch span")\n\n'
|
250
|
-
"element.click()
|
251
|
-
"elem_2 = driver.find_element"
|
243
|
+
"element.click()</mk-3>\n\n"
|
244
|
+
"<mk-4>elem_2 = driver.find_element"
|
252
245
|
'("css selector", "#docsearch-input")\n\n'
|
253
|
-
'elem_2.send_keys("Python")
|
254
|
-
"driver.quit()
|
255
|
-
),
|
256
|
-
)
|
257
|
-
self.add_slide(
|
258
|
-
"<p>What are some building blocks?</p>\n"
|
259
|
-
"<hr /><br />\n",
|
260
|
-
code=(
|
261
|
-
"from selenium import webdriver\n\n"
|
262
|
-
"driver = webdriver.Edge()\n\n"
|
263
|
-
'<mark>driver.get("http://selenium.dev")</mark>\n\n'
|
264
|
-
"element = driver.find_element"
|
265
|
-
'("css selector", "#docsearch span")\n\n'
|
266
|
-
"element.click()\n\n"
|
267
|
-
"elem_2 = driver.find_element"
|
268
|
-
'("css selector", "#docsearch-input")\n\n'
|
269
|
-
'elem_2.send_keys("Python")\n\n'
|
270
|
-
"driver.quit()\n\n"
|
271
|
-
),
|
272
|
-
)
|
273
|
-
self.add_slide(
|
274
|
-
"<p>What are some building blocks?</p>\n"
|
275
|
-
"<hr /><br />\n",
|
276
|
-
code=(
|
277
|
-
"from selenium import webdriver\n\n"
|
278
|
-
"driver = webdriver.Edge()\n\n"
|
279
|
-
'driver.get("http://selenium.dev")\n\n'
|
280
|
-
"<mark>element = driver.find_element"
|
281
|
-
'("css selector", "#docsearch span")\n\n'
|
282
|
-
"element.click()</mark>\n\n"
|
283
|
-
"elem_2 = driver.find_element"
|
284
|
-
'("css selector", "#docsearch-input")\n\n'
|
285
|
-
'elem_2.send_keys("Python")\n\n'
|
286
|
-
"driver.quit()\n\n"
|
287
|
-
),
|
288
|
-
)
|
289
|
-
self.add_slide(
|
290
|
-
"<p>What are some building blocks?</p>\n"
|
291
|
-
"<hr /><br />\n",
|
292
|
-
code=(
|
293
|
-
"from selenium import webdriver\n\n"
|
294
|
-
"driver = webdriver.Edge()\n\n"
|
295
|
-
'driver.get("http://selenium.dev")\n\n'
|
296
|
-
"element = driver.find_element"
|
297
|
-
'("css selector", "#docsearch span")\n\n'
|
298
|
-
"element.click()\n\n"
|
299
|
-
"<mark>elem_2 = driver.find_element"
|
300
|
-
'("css selector", "#docsearch-input")\n\n'
|
301
|
-
'elem_2.send_keys("Python")</mark>\n\n'
|
302
|
-
"driver.quit()\n\n"
|
303
|
-
),
|
304
|
-
)
|
305
|
-
self.add_slide(
|
306
|
-
"<p>What are some building blocks?</p>\n"
|
307
|
-
"<hr /><br />\n",
|
308
|
-
code=(
|
309
|
-
"from selenium import webdriver\n\n"
|
310
|
-
"driver = webdriver.Edge()\n\n"
|
311
|
-
'driver.get("http://selenium.dev")\n\n'
|
312
|
-
"element = driver.find_element"
|
313
|
-
'("css selector", "#docsearch span")\n\n'
|
314
|
-
"element.click()\n\n"
|
315
|
-
"elem_2 = driver.find_element"
|
316
|
-
'("css selector", "#docsearch-input")\n\n'
|
317
|
-
'elem_2.send_keys("Python")\n\n'
|
318
|
-
"<mark>driver.quit()</mark>\n\n"
|
246
|
+
'elem_2.send_keys("Python")</mk-4>\n\n'
|
247
|
+
"<mk-5>driver.quit()</mk-5>\n\n"
|
319
248
|
),
|
320
249
|
)
|
321
250
|
self.add_slide(
|
@@ -364,31 +293,17 @@ class EdgePresentationClass(BaseCase):
|
|
364
293
|
"without extra libraries or frameworks?</p><hr />"
|
365
294
|
"<p><br />\n"
|
366
295
|
"The command statements can get a bit too long:</p>\n"
|
367
|
-
"<p><code><
|
368
|
-
"driver.find_element(By.CSS_SELECTOR, CSS_SELECTOR).click()"
|
369
|
-
"</code></mark></p><br />"
|
370
|
-
"<p>This is better:</p>"
|
371
|
-
"<p><code>self.click(CSS_SELECTOR)</code><p><br />",
|
372
|
-
)
|
373
|
-
self.add_slide(
|
374
|
-
"<p>What are some disadvantages of using <b>raw</b> Selenium "
|
375
|
-
"without extra libraries or frameworks?</p><hr />"
|
376
|
-
"<p><br />\n"
|
377
|
-
"The command statements can get a bit too long:</p>\n"
|
378
|
-
"<p><code>"
|
296
|
+
"<p><code><mk-0>"
|
379
297
|
"driver.find_element(By.CSS_SELECTOR, CSS_SELECTOR).click()"
|
380
|
-
"</code></p><br />"
|
298
|
+
"</code></mk-0></p><br />"
|
381
299
|
"<p>This is better:</p>"
|
382
|
-
"<p><code><
|
300
|
+
"<p><code><mk-1>self.click(CSS_SELECTOR)</mk-1></code><p><br />",
|
383
301
|
)
|
384
302
|
self.add_slide(
|
385
303
|
"<p>What are some disadvantages of using <b>raw</b> Selenium "
|
386
|
-
"without extra libraries or frameworks?</p><hr
|
387
|
-
"<br
|
388
|
-
"
|
389
|
-
"</mark><br />"
|
390
|
-
"<p>A test framework can provide those!</p>"
|
391
|
-
"<br />",
|
304
|
+
"without extra libraries or frameworks?</p><hr /><br />\n"
|
305
|
+
"<mark>No HTML reports, dashboards, screenshots...</mark><br />"
|
306
|
+
"<p>A test framework can provide those!</p><br />",
|
392
307
|
)
|
393
308
|
self.add_slide(
|
394
309
|
"<h6>Raw Selenium disadvantages, continued...</h6><hr />"
|
@@ -397,34 +312,16 @@ class EdgePresentationClass(BaseCase):
|
|
397
312
|
image="https://seleniumbase.io/cdn/img/dash_report.png",
|
398
313
|
)
|
399
314
|
self.add_slide(
|
400
|
-
"<p>Raw Selenium disadvantages, continued...</p><hr />\n"
|
401
|
-
"<
|
402
|
-
"<
|
403
|
-
"</mark></p>\n"
|
404
|
-
"<pre>\n"
|
315
|
+
"<p>Raw Selenium disadvantages, continued...</p><hr />\n<br />\n"
|
316
|
+
"<p><mk-0>It takes multiple lines of code to do simple tasks:"
|
317
|
+
"</mk-0></p>\n<pre>\n"
|
405
318
|
'element = driver.find_element("css selector", "#password")\n'
|
406
319
|
"element.clear()\n"
|
407
320
|
'element.send_keys("secret_sauce")\n'
|
408
321
|
'element.submit()\n'
|
409
|
-
"</pre>\n"
|
410
|
-
"<
|
411
|
-
|
412
|
-
'<pre>self.type("#password", "secret_sauce\\n")</pre>'
|
413
|
-
)
|
414
|
-
self.add_slide(
|
415
|
-
"<p>Raw Selenium disadvantages, continued...</p><hr />\n"
|
416
|
-
"<br />\n"
|
417
|
-
"<p>It takes multiple lines of code to do simple tasks:</p>\n"
|
418
|
-
"<pre>\n"
|
419
|
-
'element = driver.find_element("css selector", "#password")\n'
|
420
|
-
"element.clear()\n"
|
421
|
-
'element.send_keys("secret_sauce")\n'
|
422
|
-
'element.submit()\n'
|
423
|
-
"</pre>\n"
|
424
|
-
"<br />\n"
|
425
|
-
"<p><mark>But with a framework, do all that in ONE line:"
|
426
|
-
"</mark></p>\n"
|
427
|
-
'<pre>self.type("#password", "secret_sauce\\n")</pre>'
|
322
|
+
"</pre>\n<br />\n"
|
323
|
+
"<p><mk-1>But with a framework, do all that in ONE line:</mk-1>"
|
324
|
+
'</p>\n<pre>self.type("#password", "secret_sauce\\n")</pre>'
|
428
325
|
)
|
429
326
|
self.add_slide(
|
430
327
|
"<p>What else can test frameworks provide?</p><hr />\n"
|
@@ -708,11 +605,11 @@ class EdgePresentationClass(BaseCase):
|
|
708
605
|
'<span class="str">'
|
709
606
|
' (Slow down the automation. Faster than Demo Mode.)'
|
710
607
|
'</span>\n'
|
711
|
-
'<span class="kwd">--
|
608
|
+
'<span class="kwd">--rs / --reuse-session</span>'
|
712
609
|
'<span class="str">'
|
713
610
|
' (Reuse browser session for tests.)'
|
714
611
|
'</span>\n'
|
715
|
-
'<span class="kwd">--reuse-class-session
|
612
|
+
'<span class="kwd">--rcs / --reuse-class-session</span>'
|
716
613
|
'<span class="str">'
|
717
614
|
' (RS, but for class tests.)'
|
718
615
|
'</span>\n'
|
@@ -756,7 +653,7 @@ class EdgePresentationClass(BaseCase):
|
|
756
653
|
'<span class="str">'
|
757
654
|
' (Create a detailed pytest-html report.)'
|
758
655
|
'</span>\n'
|
759
|
-
'<span class="kwd">--
|
656
|
+
'<span class="kwd">--co / --collect-only</span>'
|
760
657
|
'<span class="str">'
|
761
658
|
' (Only show discovered tests. No run.)'
|
762
659
|
'</span>\n'
|