seleniumbase 4.33.3__tar.gz → 4.33.4__tar.gz
Sign up to get free protection for your applications and to get access to all the features.
- {seleniumbase-4.33.3/seleniumbase.egg-info → seleniumbase-4.33.4}/PKG-INFO +3 -4
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/pyproject.toml +1 -1
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/pytest.ini +1 -1
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/requirements.txt +2 -3
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/__version__.py +1 -1
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/console_scripts/sb_mkdir.py +1 -1
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/core/browser_launcher.py +14 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/fixtures/base_case.py +9 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/plugins/pytest_plugin.py +117 -8
- {seleniumbase-4.33.3 → seleniumbase-4.33.4/seleniumbase.egg-info}/PKG-INFO +3 -4
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase.egg-info/requires.txt +2 -3
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/setup.py +2 -3
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/.gitignore +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/LICENSE +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/MANIFEST.in +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/README.md +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/__init__.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/basic_test.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/behave_bdd/__init__.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/behave_bdd/features/__init__.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/behave_bdd/features/environment.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/behave_bdd/features/steps/__init__.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/behave_bdd/features/steps/calculator.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/behave_bdd/features/steps/fail_page.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/behave_bdd/features/steps/imported.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/behave_bdd/features/steps/swag_labs.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/boilerplates/__init__.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/boilerplates/base_test_case.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/boilerplates/boilerplate_test.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/boilerplates/classic_obj_test.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/boilerplates/page_objects.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/boilerplates/samples/__init__.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/boilerplates/samples/file_parsing/__init__.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/boilerplates/samples/file_parsing/parse_files.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/boilerplates/samples/google_objects.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/boilerplates/samples/google_test.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/boilerplates/samples/sb_swag_test.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/boilerplates/samples/swag_labs_test.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/boilerplates/samples/test_page_objects.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/boilerplates/sb_fixture_test.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/capabilities/mac_cap_file.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/capabilities/sample_cap_file_BS.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/capabilities/sample_cap_file_SL.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/capabilities/selenoid_cap_file.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/capabilities/win10_cap_file.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/chart_maker/chart_presentation.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/chart_maker/my_chart.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/chart_maker/pie_charts.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/chart_maker/test_area_chart.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/chart_maker/test_display_chart.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/chart_maker/test_line_chart.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/chart_maker/test_multi_series.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/chart_maker/test_save_chart.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/coffee_cart_tests.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/custom_settings.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/desktop_apps/recorder.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/dialog_boxes/dialog_box_tour.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/edge_test.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/github_test.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/gui_test_runner.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/hack_the_planet.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/handle_alert_test.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/iframe_tests.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/locale_code_test.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/master_qa/__init__.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/master_qa/basic_masterqa_test_0.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/master_qa/masterqa_test_1.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/migration/__init__.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/migration/protractor/__init__.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/migration/protractor/example_test.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/migration/protractor/input_test.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/migration/protractor/mat_paginator_test.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/migration/raw_selenium/__init__.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/migration/raw_selenium/flaky_messy_raw.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/migration/raw_selenium/long_messy_raw.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/migration/raw_selenium/messy_raw.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/migration/raw_selenium/refined_raw.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/migration/raw_selenium/simple_sbase.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/my_first_test.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/nth_child_test.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/offline_examples/__init__.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/offline_examples/load_html_test.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/offline_examples/test_demo_page.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/offline_examples/test_extended_driver.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/offline_examples/test_handle_alerts.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/offline_examples/test_request_fixture.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/offline_examples/test_user_agent.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/old_wordle_script.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/parameterized_test.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/performance_test.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/presenter/core_presentation.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/presenter/edge_presentation.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/presenter/fundamentals.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/presenter/multi_uc.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/presenter/my_presentation.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/presenter/py_virtual_envs.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/presenter/uc_presentation.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/presenter/uc_presentation_3.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/proxy_test.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/rate_limiting_test.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/raw_ahrefs.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/raw_antibot_login.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/raw_bing_captcha.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/raw_block.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/raw_brotector_captcha.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/raw_call.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/raw_cdp_logging.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/raw_cf.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/raw_cookies.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/raw_detection.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/raw_driver_context.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/raw_driver_manager.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/raw_file_call.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/raw_form_turnstile.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/raw_games.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/raw_gui_click.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/raw_hobbit.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/raw_login_context.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/raw_login_driver.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/raw_login_sb.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/raw_main_call.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/raw_mobile.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/raw_multi_drivers.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/raw_nopecha.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/raw_order_tickets.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/raw_parameter_script.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/raw_performance_logs.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/raw_pixelscan.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/raw_pyautogui.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/raw_recaptcha.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/raw_robot.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/raw_sb.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/raw_test_scripts.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/raw_turnstile.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/raw_uc_mode.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/sb_fixture_tests.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/shadow_root_test.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/swag_labs_user_tests.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/test_3d_apis.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/test_apple_site.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/test_assert_elements.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/test_calculator.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/test_canvas.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/test_cdp_ad_blocking.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/test_checkboxes.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/test_chinese_pdf.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/test_chromedriver.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/test_coffee_cart.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/test_console_logging.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/test_contains_selector.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/test_cycle_elements.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/test_decryption.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/test_deferred_asserts.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/test_demo_site.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/test_detect_404s.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/test_docs_site.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/test_double_click.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/test_download_files.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/test_download_images.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/test_drag_and_drop.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/test_error_page.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/test_event_firing.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/test_fail.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/test_geolocation.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/test_get_coffee.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/test_get_locale_code.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/test_get_pdf_text.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/test_get_user_agent.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/test_hack_search.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/test_highlight_elements.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/test_image_saving.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/test_inspect_html.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/test_login.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/test_markers.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/test_mfa_login.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/test_multiple_drivers.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/test_null.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/test_override_driver.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/test_override_sb_fixture.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/test_parse_soup.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/test_pdf_asserts.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/test_pytest_parametrize.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/test_repeat_tests.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/test_request_sb_fixture.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/test_save_screenshots.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/test_sb_fixture.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/test_scrape_bing.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/test_select_options.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/test_shadow_dom.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/test_show_file_choosers.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/test_simple_login.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/test_skype_site.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/test_suite.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/test_swag_labs.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/test_tinymce.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/test_todomvc.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/test_url_asserts.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/test_usefixtures.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/test_verify_chromedriver.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/test_window_switching.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/test_xfail.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/test_xkcd.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/time_limit_test.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/tour_examples/bootstrap_google_tour.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/tour_examples/bootstrap_xkcd_tour.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/tour_examples/driverjs_maps_tour.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/tour_examples/google_tour.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/tour_examples/hopscotch_google_tour.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/tour_examples/introjs_google_tour.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/tour_examples/maps_introjs_tour.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/tour_examples/octocat_tour.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/tour_examples/recordings/__init__.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/tour_examples/recordings/shepherd_google_tour_rec.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/tour_examples/shepherd_google_tour.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/tour_examples/xkcd_tour.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/translations/chinese_test_1.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/translations/dutch_test_1.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/translations/english_test_1.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/translations/french_test_1.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/translations/italian_test_1.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/translations/japanese_test_1.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/translations/korean_test_1.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/translations/portuguese_test_1.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/translations/russian_test_1.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/translations/spanish_test_1.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/uc_cdp_events.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/unit_tests/verify_framework.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/upgrade_chromedriver.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/upload_file_test.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/user_agent_test.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/verify_undetected.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/visual_testing/__init__.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/visual_testing/layout_test.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/visual_testing/python_home_test.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/visual_testing/test_layout_fail.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/visual_testing/xkcd_visual_test.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/wordle_test.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/xpath_test.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/youtube_search_test.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/install.sh +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/integrations/__init__.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/integrations/behave/features/__init__.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/integrations/behave/features/environment.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/integrations/behave/features/steps/__init__.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/integrations/behave/features/steps/calculator.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/integrations/behave/features/steps/fail_page.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/integrations/behave/features/steps/real_world.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/integrations/behave/features/steps/swag_labs.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/integrations/brython/index.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/integrations/node_js/__init__.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/integrations/node_js/my_first_test.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/integrations/node_js/test_demo_site.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/mkdocs_build/prepare.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/sbase/__init__.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/sbase/__main__.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/sbase/steps.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/__init__.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/__main__.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/behave/__init__.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/behave/behave_helper.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/behave/behave_sb.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/behave/steps.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/common/__init__.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/common/decorators.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/common/encryption.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/common/exceptions.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/common/obfuscate.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/common/unobfuscate.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/config/__init__.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/config/ad_block_list.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/config/proxy_list.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/config/settings.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/console_scripts/__init__.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/console_scripts/logo_helper.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/console_scripts/rich_helper.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/console_scripts/run.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/console_scripts/sb_behave_gui.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/console_scripts/sb_caseplans.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/console_scripts/sb_commander.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/console_scripts/sb_install.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/console_scripts/sb_mkchart.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/console_scripts/sb_mkfile.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/console_scripts/sb_mkpres.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/console_scripts/sb_mkrec.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/console_scripts/sb_objectify.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/console_scripts/sb_print.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/console_scripts/sb_recorder.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/core/__init__.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/core/application_manager.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/core/capabilities_parser.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/core/colored_traceback.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/core/create_db_tables.sql +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/core/detect_b_ver.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/core/download_helper.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/core/encoded_images.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/core/jqc_helper.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/core/log_helper.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/core/mysql.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/core/proxy_helper.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/core/recorder_helper.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/core/report_helper.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/core/s3_manager.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/core/sb_cdp.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/core/sb_driver.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/core/session_helper.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/core/settings_parser.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/core/style_sheet.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/core/testcase_manager.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/core/tour_helper.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/core/visual_helper.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/drivers/__init__.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/extensions/__init__.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/extensions/ad_block.zip +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/extensions/disable_csp.zip +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/extensions/recorder.zip +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/extensions/sbase_ext.zip +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/fixtures/__init__.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/fixtures/constants.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/fixtures/css_to_xpath.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/fixtures/errors.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/fixtures/js_utils.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/fixtures/page_actions.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/fixtures/page_utils.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/fixtures/shared_utils.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/fixtures/unittest_helper.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/fixtures/words.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/fixtures/xpath_to_css.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/js_code/__init__.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/js_code/active_css_js.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/js_code/live_js.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/js_code/recorder_js.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/masterqa/__init__.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/masterqa/master_qa.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/plugins/__init__.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/plugins/base_plugin.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/plugins/basic_test_info.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/plugins/db_reporting_plugin.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/plugins/driver_manager.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/plugins/page_source.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/plugins/s3_logging_plugin.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/plugins/sb_manager.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/plugins/screen_shots.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/plugins/selenium_plugin.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/resources/__init__.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/translate/__init__.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/translate/chinese.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/translate/dutch.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/translate/french.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/translate/italian.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/translate/japanese.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/translate/korean.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/translate/master_dict.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/translate/portuguese.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/translate/russian.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/translate/spanish.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/translate/translator.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/undetected/__init__.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/undetected/cdp.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/undetected/cdp_driver/__init__.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/undetected/cdp_driver/_contradict.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/undetected/cdp_driver/browser.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/undetected/cdp_driver/cdp_util.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/undetected/cdp_driver/config.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/undetected/cdp_driver/connection.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/undetected/cdp_driver/element.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/undetected/cdp_driver/tab.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/undetected/dprocess.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/undetected/options.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/undetected/patcher.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/undetected/reactor.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/undetected/webelement.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/utilities/__init__.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/utilities/selenium_grid/__init__.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/utilities/selenium_grid/download_selenium_server.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/utilities/selenium_grid/font_color +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/utilities/selenium_grid/grid-hub +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/utilities/selenium_grid/grid-node +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/utilities/selenium_grid/grid_hub.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/utilities/selenium_grid/grid_node.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/utilities/selenium_grid/register-grid-node.bat +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/utilities/selenium_grid/register-grid-node.sh +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/utilities/selenium_grid/start-grid-hub.bat +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/utilities/selenium_grid/start-grid-hub.sh +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/utilities/selenium_ide/__init__.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase/utilities/selenium_ide/convert_ide.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase.egg-info/SOURCES.txt +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase.egg-info/dependency_links.txt +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase.egg-info/entry_points.txt +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/seleniumbase.egg-info/top_level.txt +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/setup.cfg +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/site/prepare.py +0 -0
- {seleniumbase-4.33.3 → seleniumbase-4.33.4}/virtualenv_install.sh +0 -0
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: seleniumbase
|
3
|
-
Version: 4.33.
|
3
|
+
Version: 4.33.4
|
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
|
@@ -76,7 +76,7 @@ Requires-Dist: pynose>=1.5.3
|
|
76
76
|
Requires-Dist: platformdirs>=4.3.6
|
77
77
|
Requires-Dist: typing-extensions>=4.12.2
|
78
78
|
Requires-Dist: sbvirtualdisplay>=1.3.0
|
79
|
-
Requires-Dist: six>=1.
|
79
|
+
Requires-Dist: six>=1.17.0
|
80
80
|
Requires-Dist: parse>=1.20.2
|
81
81
|
Requires-Dist: parse-type>=0.6.4
|
82
82
|
Requires-Dist: colorama>=0.4.6
|
@@ -104,9 +104,8 @@ Requires-Dist: sortedcontainers==2.4.0
|
|
104
104
|
Requires-Dist: execnet==2.1.1
|
105
105
|
Requires-Dist: iniconfig==2.0.0
|
106
106
|
Requires-Dist: pluggy==1.5.0
|
107
|
-
Requires-Dist: py==1.11.0
|
108
107
|
Requires-Dist: pytest==8.3.4
|
109
|
-
Requires-Dist: pytest-html==
|
108
|
+
Requires-Dist: pytest-html==4.1.1
|
110
109
|
Requires-Dist: pytest-metadata==3.1.1
|
111
110
|
Requires-Dist: pytest-ordering==0.6
|
112
111
|
Requires-Dist: pytest-rerunfailures==14.0; python_version < "3.9"
|
@@ -56,7 +56,7 @@ packages = [
|
|
56
56
|
]
|
57
57
|
|
58
58
|
[tool.pytest.ini_options]
|
59
|
-
addopts = ["--capture=
|
59
|
+
addopts = ["--capture=tee-sys", "-p no:cacheprovider"]
|
60
60
|
norecursedirs = [".*", "build", "dist", "recordings", "temp", "assets"]
|
61
61
|
filterwarnings = [
|
62
62
|
"ignore::pytest.PytestWarning",
|
@@ -15,7 +15,7 @@ pynose>=1.5.3
|
|
15
15
|
platformdirs>=4.3.6
|
16
16
|
typing-extensions>=4.12.2
|
17
17
|
sbvirtualdisplay>=1.3.0
|
18
|
-
six>=1.
|
18
|
+
six>=1.17.0
|
19
19
|
parse>=1.20.2
|
20
20
|
parse-type>=0.6.4
|
21
21
|
colorama>=0.4.6
|
@@ -43,9 +43,8 @@ sortedcontainers==2.4.0
|
|
43
43
|
execnet==2.1.1
|
44
44
|
iniconfig==2.0.0
|
45
45
|
pluggy==1.5.0
|
46
|
-
py==1.11.0
|
47
46
|
pytest==8.3.4
|
48
|
-
pytest-html==
|
47
|
+
pytest-html==4.1.1
|
49
48
|
pytest-metadata==3.1.1
|
50
49
|
pytest-ordering==0.6
|
51
50
|
pytest-rerunfailures==14.0;python_version<"3.9"
|
@@ -1,2 +1,2 @@
|
|
1
1
|
# seleniumbase package
|
2
|
-
__version__ = "4.33.
|
2
|
+
__version__ = "4.33.4"
|
@@ -120,7 +120,7 @@ def main():
|
|
120
120
|
|
121
121
|
data = []
|
122
122
|
data.append("[pytest]")
|
123
|
-
data.append("addopts = --capture=
|
123
|
+
data.append("addopts = --capture=tee-sys -p no:cacheprovider")
|
124
124
|
data.append("norecursedirs = .* build dist recordings temp assets")
|
125
125
|
data.append("filterwarnings =")
|
126
126
|
data.append(" ignore::pytest.PytestWarning")
|
@@ -97,6 +97,13 @@ def log_d(message):
|
|
97
97
|
print(message)
|
98
98
|
|
99
99
|
|
100
|
+
def make_writable(file_path):
|
101
|
+
# Set permissions to: "If you can read it, you can write it."
|
102
|
+
mode = os.stat(file_path).st_mode
|
103
|
+
mode |= (mode & 0o444) >> 1 # copy R bits to W
|
104
|
+
os.chmod(file_path, mode)
|
105
|
+
|
106
|
+
|
100
107
|
def make_executable(file_path):
|
101
108
|
# Set permissions to: "If you can read it, you can execute it."
|
102
109
|
mode = os.stat(file_path).st_mode
|
@@ -815,6 +822,13 @@ def install_pyautogui_if_missing(driver):
|
|
815
822
|
pip_find_lock = fasteners.InterProcessLock(
|
816
823
|
constants.PipInstall.FINDLOCK
|
817
824
|
)
|
825
|
+
try:
|
826
|
+
with pip_find_lock:
|
827
|
+
pass
|
828
|
+
except Exception:
|
829
|
+
# Need write permissions
|
830
|
+
with suppress(Exception):
|
831
|
+
make_writable(constants.PipInstall.FINDLOCK)
|
818
832
|
with pip_find_lock: # Prevent issues with multiple processes
|
819
833
|
try:
|
820
834
|
import pyautogui
|
@@ -13983,6 +13983,15 @@ class BaseCase(unittest.TestCase):
|
|
13983
13983
|
pip_find_lock = fasteners.InterProcessLock(
|
13984
13984
|
constants.PipInstall.FINDLOCK
|
13985
13985
|
)
|
13986
|
+
try:
|
13987
|
+
with pip_find_lock:
|
13988
|
+
pass
|
13989
|
+
except Exception:
|
13990
|
+
# Need write permissions
|
13991
|
+
with suppress(Exception):
|
13992
|
+
mode = os.stat(constants.PipInstall.FINDLOCK).st_mode
|
13993
|
+
mode |= (mode & 0o444) >> 1 # copy R bits to W
|
13994
|
+
os.chmod(constants.PipInstall.FINDLOCK, mode)
|
13986
13995
|
with pip_find_lock: # Prevent issues with multiple processes
|
13987
13996
|
if self.undetectable and not (self.headless or self.headless2):
|
13988
13997
|
import Xlib.display
|
@@ -17,6 +17,7 @@ if sys.version_info >= (3, 11):
|
|
17
17
|
python3_11_or_newer = True
|
18
18
|
py311_patch2 = constants.PatchPy311.PATCH
|
19
19
|
sys_argv = sys.argv
|
20
|
+
full_time = None
|
20
21
|
pytest_plugins = ["pytester"] # Adds the "testdir" fixture
|
21
22
|
|
22
23
|
|
@@ -2038,6 +2039,7 @@ def pytest_runtest_teardown(item):
|
|
2038
2039
|
if (
|
2039
2040
|
"-s" in sys_argv
|
2040
2041
|
or "--capture=no" in sys_argv
|
2042
|
+
or "--capture=tee-sys" in sys_argv
|
2041
2043
|
or (
|
2042
2044
|
hasattr(sb_config.pytest_config, "invocation_params")
|
2043
2045
|
and (
|
@@ -2045,6 +2047,9 @@ def pytest_runtest_teardown(item):
|
|
2045
2047
|
or "--capture=no" in (
|
2046
2048
|
sb_config.pytest_config.invocation_params.args
|
2047
2049
|
)
|
2050
|
+
or "--capture=tee-sys" in (
|
2051
|
+
sb_config.pytest_config.invocation_params.args
|
2052
|
+
)
|
2048
2053
|
)
|
2049
2054
|
)
|
2050
2055
|
):
|
@@ -2053,6 +2058,10 @@ def pytest_runtest_teardown(item):
|
|
2053
2058
|
sys.stdout.write("\n=> Fail Page: %s\n" % sb_config._fail_page)
|
2054
2059
|
|
2055
2060
|
|
2061
|
+
def pytest_html_duration_format(duration):
|
2062
|
+
return "%.2f" % duration
|
2063
|
+
|
2064
|
+
|
2056
2065
|
def pytest_sessionfinish(session):
|
2057
2066
|
pass
|
2058
2067
|
|
@@ -2103,9 +2112,11 @@ def pytest_terminal_summary(terminalreporter):
|
|
2103
2112
|
)
|
2104
2113
|
|
2105
2114
|
|
2106
|
-
def _perform_pytest_unconfigure_():
|
2115
|
+
def _perform_pytest_unconfigure_(config):
|
2107
2116
|
from seleniumbase.core import proxy_helper
|
2108
2117
|
|
2118
|
+
reporter = config.pluginmanager.get_plugin("terminalreporter")
|
2119
|
+
duration = time.time() - reporter._sessionstarttime
|
2109
2120
|
if (
|
2110
2121
|
(hasattr(sb_config, "multi_proxy") and not sb_config.multi_proxy)
|
2111
2122
|
or not hasattr(sb_config, "multi_proxy")
|
@@ -2133,6 +2144,63 @@ def _perform_pytest_unconfigure_():
|
|
2133
2144
|
log_helper.clear_empty_logs()
|
2134
2145
|
# Dashboard post-processing: Disable time-based refresh and stamp complete
|
2135
2146
|
if not hasattr(sb_config, "dashboard") or not sb_config.dashboard:
|
2147
|
+
html_report_path = None
|
2148
|
+
the_html_r = None
|
2149
|
+
abs_path = os.path.abspath(".")
|
2150
|
+
if sb_config._html_report_name:
|
2151
|
+
html_report_path = os.path.join(
|
2152
|
+
abs_path, sb_config._html_report_name
|
2153
|
+
)
|
2154
|
+
if (
|
2155
|
+
sb_config._using_html_report
|
2156
|
+
and html_report_path
|
2157
|
+
and os.path.exists(html_report_path)
|
2158
|
+
):
|
2159
|
+
with open(html_report_path, "r", encoding="utf-8") as f:
|
2160
|
+
the_html_r = f.read()
|
2161
|
+
assets_chunk = "if (assets.length === 1) {"
|
2162
|
+
remove_media = "container.classList.remove('media-container')"
|
2163
|
+
rm_n_left = '<div class="media-container__nav--left"><</div>'
|
2164
|
+
rm_n_right = '<div class="media-container__nav--right">></div>'
|
2165
|
+
the_html_r = the_html_r.replace(
|
2166
|
+
assets_chunk,
|
2167
|
+
"%s %s" % (assets_chunk, remove_media),
|
2168
|
+
)
|
2169
|
+
the_html_r = the_html_r.replace(rm_n_left, "")
|
2170
|
+
the_html_r = the_html_r.replace(rm_n_right, "")
|
2171
|
+
the_html_r = the_html_r.replace("<ul>$", "$")
|
2172
|
+
the_html_r = the_html_r.replace("}<ul>", "}")
|
2173
|
+
the_html_r = the_html_r.replace(
|
2174
|
+
"<li>${val}</li>", "${val}, "
|
2175
|
+
)
|
2176
|
+
the_html_r = the_html_r.replace(
|
2177
|
+
"<div>${value}</div>", "<span>${value}</span"
|
2178
|
+
)
|
2179
|
+
ph_link = '<a href="https://pypi.python.org/pypi/pytest-html">'
|
2180
|
+
sb_link = (
|
2181
|
+
'<a href="https://github.com/seleniumbase/SeleniumBase">'
|
2182
|
+
'SeleniumBase</a>'
|
2183
|
+
)
|
2184
|
+
the_html_r = the_html_r.replace(
|
2185
|
+
ph_link, "%s and %s" % (sb_link, ph_link)
|
2186
|
+
)
|
2187
|
+
the_html_r = the_html_r.replace(
|
2188
|
+
"mediaName.innerText", "//mediaName.innerText"
|
2189
|
+
)
|
2190
|
+
the_html_r = the_html_r.replace(
|
2191
|
+
"counter.innerText", "//counter.innerText"
|
2192
|
+
)
|
2193
|
+
run_count = '<p class="run-count">'
|
2194
|
+
run_c_loc = the_html_r.find(run_count)
|
2195
|
+
rc_loc = the_html_r.find(" took ", run_c_loc)
|
2196
|
+
end_rc_loc = the_html_r.find(".</p>", rc_loc)
|
2197
|
+
run_time = "%.2f" % duration
|
2198
|
+
new_time = " ran in %s seconds" % run_time
|
2199
|
+
the_html_r = (
|
2200
|
+
the_html_r[:rc_loc] + new_time + the_html_r[end_rc_loc:]
|
2201
|
+
)
|
2202
|
+
with open(html_report_path, "w", encoding="utf-8") as f:
|
2203
|
+
f.write(the_html_r) # Finalize the HTML report
|
2136
2204
|
# Done with "pytest_unconfigure" unless using the Dashboard
|
2137
2205
|
return
|
2138
2206
|
stamp = ""
|
@@ -2237,7 +2305,7 @@ def _perform_pytest_unconfigure_():
|
|
2237
2305
|
elif "\\" in h_r_name and h_r_name.endswith(".html"):
|
2238
2306
|
h_r_name = h_r_name.split("\\")[-1]
|
2239
2307
|
the_html_r = the_html_r.replace(
|
2240
|
-
|
2308
|
+
'<h1 id="title">%s</h1>' % h_r_name,
|
2241
2309
|
sb_config._saved_dashboard_pie,
|
2242
2310
|
)
|
2243
2311
|
the_html_r = the_html_r.replace(
|
@@ -2247,6 +2315,47 @@ def _perform_pytest_unconfigure_():
|
|
2247
2315
|
)
|
2248
2316
|
if sb_config._dash_final_summary:
|
2249
2317
|
the_html_r += sb_config._dash_final_summary
|
2318
|
+
assets_chunk = "if (assets.length === 1) {"
|
2319
|
+
remove_media = "container.classList.remove('media-container')"
|
2320
|
+
rm_n_left = '<div class="media-container__nav--left"><</div>'
|
2321
|
+
rm_n_right = '<div class="media-container__nav--right">></div>'
|
2322
|
+
the_html_r = the_html_r.replace(
|
2323
|
+
assets_chunk,
|
2324
|
+
"%s %s" % (assets_chunk, remove_media),
|
2325
|
+
)
|
2326
|
+
the_html_r = the_html_r.replace(rm_n_left, "")
|
2327
|
+
the_html_r = the_html_r.replace(rm_n_right, "")
|
2328
|
+
the_html_r = the_html_r.replace("<ul>$", "$")
|
2329
|
+
the_html_r = the_html_r.replace("}<ul>", "}")
|
2330
|
+
the_html_r = the_html_r.replace(
|
2331
|
+
"<li>${val}</li>", "${val}, "
|
2332
|
+
)
|
2333
|
+
the_html_r = the_html_r.replace(
|
2334
|
+
"<div>${value}</div>", "<span>${value}</span"
|
2335
|
+
)
|
2336
|
+
ph_link = '<a href="https://pypi.python.org/pypi/pytest-html">'
|
2337
|
+
sb_link = (
|
2338
|
+
'<a href="https://github.com/seleniumbase/SeleniumBase">'
|
2339
|
+
'SeleniumBase</a>'
|
2340
|
+
)
|
2341
|
+
the_html_r = the_html_r.replace(
|
2342
|
+
ph_link, "%s and %s" % (sb_link, ph_link)
|
2343
|
+
)
|
2344
|
+
the_html_r = the_html_r.replace(
|
2345
|
+
"mediaName.innerText", "//mediaName.innerText"
|
2346
|
+
)
|
2347
|
+
the_html_r = the_html_r.replace(
|
2348
|
+
"counter.innerText", "//counter.innerText"
|
2349
|
+
)
|
2350
|
+
run_count = '<p class="run-count">'
|
2351
|
+
run_c_loc = the_html_r.find(run_count)
|
2352
|
+
rc_loc = the_html_r.find(" took ", run_c_loc)
|
2353
|
+
end_rc_loc = the_html_r.find(".</p>", rc_loc)
|
2354
|
+
run_time = "%.2f" % duration
|
2355
|
+
new_time = " ran in %s seconds" % run_time
|
2356
|
+
the_html_r = (
|
2357
|
+
the_html_r[:rc_loc] + new_time + the_html_r[end_rc_loc:]
|
2358
|
+
)
|
2250
2359
|
with open(html_report_path, "w", encoding="utf-8") as f:
|
2251
2360
|
f.write(the_html_r) # Finalize the HTML report
|
2252
2361
|
except KeyboardInterrupt:
|
@@ -2281,19 +2390,19 @@ def pytest_unconfigure(config):
|
|
2281
2390
|
with open(dashboard_path, "w", encoding="utf-8") as f:
|
2282
2391
|
f.write(sb_config._dash_html)
|
2283
2392
|
# Dashboard Multithreaded
|
2284
|
-
_perform_pytest_unconfigure_()
|
2393
|
+
_perform_pytest_unconfigure_(config)
|
2285
2394
|
return
|
2286
2395
|
else:
|
2287
2396
|
# Dash Lock is missing
|
2288
|
-
_perform_pytest_unconfigure_()
|
2397
|
+
_perform_pytest_unconfigure_(config)
|
2289
2398
|
return
|
2290
2399
|
with dash_lock:
|
2291
2400
|
# Multi-threaded tests
|
2292
|
-
_perform_pytest_unconfigure_()
|
2401
|
+
_perform_pytest_unconfigure_(config)
|
2293
2402
|
return
|
2294
2403
|
else:
|
2295
2404
|
# Single-threaded tests
|
2296
|
-
_perform_pytest_unconfigure_()
|
2405
|
+
_perform_pytest_unconfigure_(config)
|
2297
2406
|
return
|
2298
2407
|
|
2299
2408
|
|
@@ -2442,7 +2551,7 @@ def pytest_runtest_makereport(item, call):
|
|
2442
2551
|
return
|
2443
2552
|
extra = getattr(report, "extra", [])
|
2444
2553
|
if len(extra_report) > 1 and extra_report[1]["content"]:
|
2445
|
-
report.
|
2554
|
+
report.extras = extra + extra_report
|
2446
2555
|
if sb_config._dash_is_html_report:
|
2447
2556
|
# If the Dashboard URL is the same as the HTML Report URL,
|
2448
2557
|
# have the html report refresh back to a dashboard on update.
|
@@ -2450,4 +2559,4 @@ def pytest_runtest_makereport(item, call):
|
|
2450
2559
|
'<script type="text/javascript" src="%s">'
|
2451
2560
|
"</script>" % constants.Dashboard.LIVE_JS
|
2452
2561
|
)
|
2453
|
-
report.
|
2562
|
+
report.extras.append(pytest_html.extras.html(refresh_updates))
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: seleniumbase
|
3
|
-
Version: 4.33.
|
3
|
+
Version: 4.33.4
|
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
|
@@ -76,7 +76,7 @@ Requires-Dist: pynose>=1.5.3
|
|
76
76
|
Requires-Dist: platformdirs>=4.3.6
|
77
77
|
Requires-Dist: typing-extensions>=4.12.2
|
78
78
|
Requires-Dist: sbvirtualdisplay>=1.3.0
|
79
|
-
Requires-Dist: six>=1.
|
79
|
+
Requires-Dist: six>=1.17.0
|
80
80
|
Requires-Dist: parse>=1.20.2
|
81
81
|
Requires-Dist: parse-type>=0.6.4
|
82
82
|
Requires-Dist: colorama>=0.4.6
|
@@ -104,9 +104,8 @@ Requires-Dist: sortedcontainers==2.4.0
|
|
104
104
|
Requires-Dist: execnet==2.1.1
|
105
105
|
Requires-Dist: iniconfig==2.0.0
|
106
106
|
Requires-Dist: pluggy==1.5.0
|
107
|
-
Requires-Dist: py==1.11.0
|
108
107
|
Requires-Dist: pytest==8.3.4
|
109
|
-
Requires-Dist: pytest-html==
|
108
|
+
Requires-Dist: pytest-html==4.1.1
|
110
109
|
Requires-Dist: pytest-metadata==3.1.1
|
111
110
|
Requires-Dist: pytest-ordering==0.6
|
112
111
|
Requires-Dist: pytest-rerunfailures==14.0; python_version < "3.9"
|
@@ -11,7 +11,7 @@ pynose>=1.5.3
|
|
11
11
|
platformdirs>=4.3.6
|
12
12
|
typing-extensions>=4.12.2
|
13
13
|
sbvirtualdisplay>=1.3.0
|
14
|
-
six>=1.
|
14
|
+
six>=1.17.0
|
15
15
|
parse>=1.20.2
|
16
16
|
parse-type>=0.6.4
|
17
17
|
colorama>=0.4.6
|
@@ -36,9 +36,8 @@ sortedcontainers==2.4.0
|
|
36
36
|
execnet==2.1.1
|
37
37
|
iniconfig==2.0.0
|
38
38
|
pluggy==1.5.0
|
39
|
-
py==1.11.0
|
40
39
|
pytest==8.3.4
|
41
|
-
pytest-html==
|
40
|
+
pytest-html==4.1.1
|
42
41
|
pytest-metadata==3.1.1
|
43
42
|
pytest-ordering==0.6
|
44
43
|
pytest-xdist==3.6.1
|
@@ -164,7 +164,7 @@ setup(
|
|
164
164
|
'platformdirs>=4.3.6',
|
165
165
|
'typing-extensions>=4.12.2',
|
166
166
|
"sbvirtualdisplay>=1.3.0",
|
167
|
-
"six>=1.
|
167
|
+
"six>=1.17.0",
|
168
168
|
'parse>=1.20.2',
|
169
169
|
'parse-type>=0.6.4',
|
170
170
|
'colorama>=0.4.6',
|
@@ -192,9 +192,8 @@ setup(
|
|
192
192
|
'execnet==2.1.1',
|
193
193
|
'iniconfig==2.0.0',
|
194
194
|
'pluggy==1.5.0',
|
195
|
-
"py==1.11.0", # Needed by pytest-html
|
196
195
|
'pytest==8.3.4',
|
197
|
-
"pytest-html==
|
196
|
+
"pytest-html==4.1.1",
|
198
197
|
'pytest-metadata==3.1.1',
|
199
198
|
"pytest-ordering==0.6",
|
200
199
|
'pytest-rerunfailures==14.0;python_version<"3.9"',
|
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.33.3 → seleniumbase-4.33.4}/examples/behave_bdd/features/steps/calculator.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
|
{seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/boilerplates/samples/file_parsing/__init__.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{seleniumbase-4.33.3 → seleniumbase-4.33.4}/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
|
{seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/migration/protractor/mat_paginator_test.py
RENAMED
File without changes
|
File without changes
|
{seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/migration/raw_selenium/flaky_messy_raw.py
RENAMED
File without changes
|
{seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/migration/raw_selenium/long_messy_raw.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
|
{seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/offline_examples/test_extended_driver.py
RENAMED
File without changes
|
File without changes
|
{seleniumbase-4.33.3 → seleniumbase-4.33.4}/examples/offline_examples/test_request_fixture.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
|