seleniumbase 4.31.1__tar.gz → 4.31.2__tar.gz

Sign up to get free protection for your applications and to get access to all the features.
Files changed (383) hide show
  1. {seleniumbase-4.31.1/seleniumbase.egg-info → seleniumbase-4.31.2}/PKG-INFO +2 -1
  2. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/README.md +1 -0
  3. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/raw_parameter_script.py +14 -7
  4. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/__version__.py +1 -1
  5. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/behave/behave_sb.py +8 -1
  6. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/core/browser_launcher.py +21 -0
  7. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/fixtures/base_case.py +7 -0
  8. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/plugins/driver_manager.py +10 -2
  9. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/plugins/pytest_plugin.py +11 -0
  10. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/plugins/sb_manager.py +11 -2
  11. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/plugins/selenium_plugin.py +11 -0
  12. {seleniumbase-4.31.1 → seleniumbase-4.31.2/seleniumbase.egg-info}/PKG-INFO +2 -1
  13. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/.gitignore +0 -0
  14. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/LICENSE +0 -0
  15. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/MANIFEST.in +0 -0
  16. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/__init__.py +0 -0
  17. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/basic_test.py +0 -0
  18. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/behave_bdd/__init__.py +0 -0
  19. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/behave_bdd/features/__init__.py +0 -0
  20. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/behave_bdd/features/environment.py +0 -0
  21. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/behave_bdd/features/steps/__init__.py +0 -0
  22. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/behave_bdd/features/steps/calculator.py +0 -0
  23. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/behave_bdd/features/steps/fail_page.py +0 -0
  24. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/behave_bdd/features/steps/imported.py +0 -0
  25. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/behave_bdd/features/steps/swag_labs.py +0 -0
  26. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/boilerplates/__init__.py +0 -0
  27. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/boilerplates/base_test_case.py +0 -0
  28. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/boilerplates/boilerplate_test.py +0 -0
  29. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/boilerplates/classic_obj_test.py +0 -0
  30. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/boilerplates/page_objects.py +0 -0
  31. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/boilerplates/samples/__init__.py +0 -0
  32. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/boilerplates/samples/file_parsing/__init__.py +0 -0
  33. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/boilerplates/samples/file_parsing/parse_files.py +0 -0
  34. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/boilerplates/samples/google_objects.py +0 -0
  35. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/boilerplates/samples/google_test.py +0 -0
  36. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/boilerplates/samples/sb_swag_test.py +0 -0
  37. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/boilerplates/samples/swag_labs_test.py +0 -0
  38. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/boilerplates/samples/test_page_objects.py +0 -0
  39. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/boilerplates/sb_fixture_test.py +0 -0
  40. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/capabilities/mac_cap_file.py +0 -0
  41. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/capabilities/sample_cap_file_BS.py +0 -0
  42. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/capabilities/sample_cap_file_SL.py +0 -0
  43. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/capabilities/selenoid_cap_file.py +0 -0
  44. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/capabilities/win10_cap_file.py +0 -0
  45. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/chart_maker/chart_presentation.py +0 -0
  46. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/chart_maker/my_chart.py +0 -0
  47. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/chart_maker/pie_charts.py +0 -0
  48. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/chart_maker/test_area_chart.py +0 -0
  49. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/chart_maker/test_display_chart.py +0 -0
  50. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/chart_maker/test_line_chart.py +0 -0
  51. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/chart_maker/test_multi_series.py +0 -0
  52. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/chart_maker/test_save_chart.py +0 -0
  53. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/coffee_cart_tests.py +0 -0
  54. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/custom_settings.py +0 -0
  55. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/desktop_apps/recorder.py +0 -0
  56. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/dialog_boxes/dialog_box_tour.py +0 -0
  57. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/edge_test.py +0 -0
  58. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/github_test.py +0 -0
  59. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/gui_test_runner.py +0 -0
  60. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/hack_the_planet.py +0 -0
  61. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/handle_alert_test.py +0 -0
  62. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/iframe_tests.py +0 -0
  63. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/locale_code_test.py +0 -0
  64. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/master_qa/__init__.py +0 -0
  65. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/master_qa/basic_masterqa_test_0.py +0 -0
  66. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/master_qa/masterqa_test_1.py +0 -0
  67. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/migration/__init__.py +0 -0
  68. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/migration/protractor/__init__.py +0 -0
  69. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/migration/protractor/example_test.py +0 -0
  70. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/migration/protractor/input_test.py +0 -0
  71. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/migration/protractor/mat_paginator_test.py +0 -0
  72. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/migration/raw_selenium/__init__.py +0 -0
  73. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/migration/raw_selenium/flaky_messy_raw.py +0 -0
  74. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/migration/raw_selenium/long_messy_raw.py +0 -0
  75. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/migration/raw_selenium/messy_raw.py +0 -0
  76. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/migration/raw_selenium/refined_raw.py +0 -0
  77. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/migration/raw_selenium/simple_sbase.py +0 -0
  78. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/my_first_test.py +0 -0
  79. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/nth_child_test.py +0 -0
  80. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/offline_examples/__init__.py +0 -0
  81. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/offline_examples/load_html_test.py +0 -0
  82. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/offline_examples/test_demo_page.py +0 -0
  83. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/offline_examples/test_extended_driver.py +0 -0
  84. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/offline_examples/test_handle_alerts.py +0 -0
  85. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/offline_examples/test_request_fixture.py +0 -0
  86. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/offline_examples/test_user_agent.py +0 -0
  87. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/old_wordle_script.py +0 -0
  88. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/parameterized_test.py +0 -0
  89. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/performance_test.py +0 -0
  90. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/presenter/core_presentation.py +0 -0
  91. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/presenter/edge_presentation.py +0 -0
  92. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/presenter/fundamentals.py +0 -0
  93. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/presenter/multi_uc.py +0 -0
  94. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/presenter/my_presentation.py +0 -0
  95. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/presenter/py_virtual_envs.py +0 -0
  96. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/presenter/uc_presentation.py +0 -0
  97. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/presenter/uc_presentation_3.py +0 -0
  98. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/proxy_test.py +0 -0
  99. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/rate_limiting_test.py +0 -0
  100. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/raw_ahrefs.py +0 -0
  101. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/raw_antibot_login.py +0 -0
  102. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/raw_bing_captcha.py +0 -0
  103. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/raw_block.py +0 -0
  104. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/raw_brotector_captcha.py +0 -0
  105. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/raw_call.py +0 -0
  106. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/raw_cdp_logging.py +0 -0
  107. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/raw_cf.py +0 -0
  108. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/raw_cookies.py +0 -0
  109. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/raw_detection.py +0 -0
  110. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/raw_driver_context.py +0 -0
  111. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/raw_driver_manager.py +0 -0
  112. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/raw_file_call.py +0 -0
  113. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/raw_form_turnstile.py +0 -0
  114. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/raw_games.py +0 -0
  115. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/raw_gui_click.py +0 -0
  116. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/raw_hobbit.py +0 -0
  117. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/raw_login_context.py +0 -0
  118. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/raw_login_driver.py +0 -0
  119. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/raw_login_sb.py +0 -0
  120. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/raw_main_call.py +0 -0
  121. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/raw_mobile.py +0 -0
  122. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/raw_multi_drivers.py +0 -0
  123. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/raw_nopecha.py +0 -0
  124. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/raw_order_tickets.py +0 -0
  125. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/raw_performance_logs.py +0 -0
  126. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/raw_pixelscan.py +0 -0
  127. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/raw_pyautogui.py +0 -0
  128. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/raw_recaptcha.py +0 -0
  129. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/raw_robot.py +0 -0
  130. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/raw_sb.py +0 -0
  131. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/raw_test_scripts.py +0 -0
  132. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/raw_turnstile.py +0 -0
  133. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/raw_uc_mode.py +0 -0
  134. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/sb_fixture_tests.py +0 -0
  135. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/shadow_root_test.py +0 -0
  136. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/swag_labs_user_tests.py +0 -0
  137. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/test_3d_apis.py +0 -0
  138. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/test_apple_site.py +0 -0
  139. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/test_assert_elements.py +0 -0
  140. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/test_calculator.py +0 -0
  141. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/test_canvas.py +0 -0
  142. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/test_cdp_ad_blocking.py +0 -0
  143. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/test_checkboxes.py +0 -0
  144. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/test_chinese_pdf.py +0 -0
  145. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/test_chromedriver.py +0 -0
  146. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/test_coffee_cart.py +0 -0
  147. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/test_console_logging.py +0 -0
  148. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/test_contains_selector.py +0 -0
  149. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/test_cycle_elements.py +0 -0
  150. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/test_decryption.py +0 -0
  151. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/test_deferred_asserts.py +0 -0
  152. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/test_demo_site.py +0 -0
  153. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/test_detect_404s.py +0 -0
  154. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/test_docs_site.py +0 -0
  155. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/test_double_click.py +0 -0
  156. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/test_download_files.py +0 -0
  157. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/test_download_images.py +0 -0
  158. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/test_drag_and_drop.py +0 -0
  159. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/test_error_page.py +0 -0
  160. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/test_event_firing.py +0 -0
  161. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/test_fail.py +0 -0
  162. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/test_geolocation.py +0 -0
  163. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/test_get_coffee.py +0 -0
  164. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/test_get_locale_code.py +0 -0
  165. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/test_get_pdf_text.py +0 -0
  166. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/test_get_user_agent.py +0 -0
  167. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/test_hack_search.py +0 -0
  168. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/test_highlight_elements.py +0 -0
  169. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/test_image_saving.py +0 -0
  170. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/test_inspect_html.py +0 -0
  171. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/test_login.py +0 -0
  172. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/test_markers.py +0 -0
  173. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/test_mfa_login.py +0 -0
  174. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/test_multiple_drivers.py +0 -0
  175. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/test_null.py +0 -0
  176. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/test_override_driver.py +0 -0
  177. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/test_override_sb_fixture.py +0 -0
  178. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/test_parse_soup.py +0 -0
  179. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/test_pdf_asserts.py +0 -0
  180. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/test_pytest_parametrize.py +0 -0
  181. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/test_repeat_tests.py +0 -0
  182. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/test_request_sb_fixture.py +0 -0
  183. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/test_save_screenshots.py +0 -0
  184. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/test_sb_fixture.py +0 -0
  185. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/test_scrape_bing.py +0 -0
  186. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/test_select_options.py +0 -0
  187. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/test_shadow_dom.py +0 -0
  188. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/test_show_file_choosers.py +0 -0
  189. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/test_simple_login.py +0 -0
  190. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/test_skype_site.py +0 -0
  191. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/test_suite.py +0 -0
  192. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/test_swag_labs.py +0 -0
  193. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/test_tinymce.py +0 -0
  194. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/test_todomvc.py +0 -0
  195. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/test_url_asserts.py +0 -0
  196. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/test_usefixtures.py +0 -0
  197. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/test_verify_chromedriver.py +0 -0
  198. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/test_window_switching.py +0 -0
  199. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/test_xfail.py +0 -0
  200. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/test_xkcd.py +0 -0
  201. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/time_limit_test.py +0 -0
  202. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/tour_examples/bootstrap_google_tour.py +0 -0
  203. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/tour_examples/bootstrap_xkcd_tour.py +0 -0
  204. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/tour_examples/driverjs_maps_tour.py +0 -0
  205. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/tour_examples/google_tour.py +0 -0
  206. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/tour_examples/hopscotch_google_tour.py +0 -0
  207. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/tour_examples/introjs_google_tour.py +0 -0
  208. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/tour_examples/maps_introjs_tour.py +0 -0
  209. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/tour_examples/octocat_tour.py +0 -0
  210. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/tour_examples/recordings/__init__.py +0 -0
  211. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/tour_examples/recordings/shepherd_google_tour_rec.py +0 -0
  212. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/tour_examples/shepherd_google_tour.py +0 -0
  213. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/tour_examples/xkcd_tour.py +0 -0
  214. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/translations/chinese_test_1.py +0 -0
  215. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/translations/dutch_test_1.py +0 -0
  216. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/translations/english_test_1.py +0 -0
  217. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/translations/french_test_1.py +0 -0
  218. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/translations/italian_test_1.py +0 -0
  219. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/translations/japanese_test_1.py +0 -0
  220. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/translations/korean_test_1.py +0 -0
  221. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/translations/portuguese_test_1.py +0 -0
  222. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/translations/russian_test_1.py +0 -0
  223. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/translations/spanish_test_1.py +0 -0
  224. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/uc_cdp_events.py +0 -0
  225. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/unit_tests/verify_framework.py +0 -0
  226. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/upgrade_chromedriver.py +0 -0
  227. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/upload_file_test.py +0 -0
  228. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/user_agent_test.py +0 -0
  229. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/verify_undetected.py +0 -0
  230. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/visual_testing/__init__.py +0 -0
  231. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/visual_testing/layout_test.py +0 -0
  232. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/visual_testing/python_home_test.py +0 -0
  233. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/visual_testing/test_layout_fail.py +0 -0
  234. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/visual_testing/xkcd_visual_test.py +0 -0
  235. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/wordle_test.py +0 -0
  236. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/xpath_test.py +0 -0
  237. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/examples/youtube_search_test.py +0 -0
  238. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/install.sh +0 -0
  239. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/integrations/__init__.py +0 -0
  240. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/integrations/behave/features/__init__.py +0 -0
  241. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/integrations/behave/features/environment.py +0 -0
  242. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/integrations/behave/features/steps/__init__.py +0 -0
  243. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/integrations/behave/features/steps/calculator.py +0 -0
  244. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/integrations/behave/features/steps/fail_page.py +0 -0
  245. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/integrations/behave/features/steps/real_world.py +0 -0
  246. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/integrations/behave/features/steps/swag_labs.py +0 -0
  247. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/integrations/brython/index.py +0 -0
  248. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/integrations/node_js/__init__.py +0 -0
  249. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/integrations/node_js/my_first_test.py +0 -0
  250. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/integrations/node_js/test_demo_site.py +0 -0
  251. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/mkdocs_build/prepare.py +0 -0
  252. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/pyproject.toml +0 -0
  253. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/pytest.ini +0 -0
  254. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/requirements.txt +0 -0
  255. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/sbase/__init__.py +0 -0
  256. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/sbase/__main__.py +0 -0
  257. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/sbase/steps.py +0 -0
  258. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/__init__.py +0 -0
  259. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/__main__.py +0 -0
  260. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/behave/__init__.py +0 -0
  261. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/behave/behave_helper.py +0 -0
  262. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/behave/steps.py +0 -0
  263. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/common/__init__.py +0 -0
  264. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/common/decorators.py +0 -0
  265. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/common/encryption.py +0 -0
  266. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/common/exceptions.py +0 -0
  267. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/common/obfuscate.py +0 -0
  268. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/common/unobfuscate.py +0 -0
  269. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/config/__init__.py +0 -0
  270. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/config/ad_block_list.py +0 -0
  271. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/config/proxy_list.py +0 -0
  272. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/config/settings.py +0 -0
  273. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/console_scripts/__init__.py +0 -0
  274. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/console_scripts/logo_helper.py +0 -0
  275. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/console_scripts/rich_helper.py +0 -0
  276. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/console_scripts/run.py +0 -0
  277. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/console_scripts/sb_behave_gui.py +0 -0
  278. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/console_scripts/sb_caseplans.py +0 -0
  279. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/console_scripts/sb_commander.py +0 -0
  280. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/console_scripts/sb_install.py +0 -0
  281. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/console_scripts/sb_mkchart.py +0 -0
  282. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/console_scripts/sb_mkdir.py +0 -0
  283. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/console_scripts/sb_mkfile.py +0 -0
  284. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/console_scripts/sb_mkpres.py +0 -0
  285. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/console_scripts/sb_mkrec.py +0 -0
  286. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/console_scripts/sb_objectify.py +0 -0
  287. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/console_scripts/sb_print.py +0 -0
  288. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/console_scripts/sb_recorder.py +0 -0
  289. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/core/__init__.py +0 -0
  290. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/core/application_manager.py +0 -0
  291. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/core/capabilities_parser.py +0 -0
  292. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/core/colored_traceback.py +0 -0
  293. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/core/create_db_tables.sql +0 -0
  294. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/core/detect_b_ver.py +0 -0
  295. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/core/download_helper.py +0 -0
  296. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/core/encoded_images.py +0 -0
  297. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/core/jqc_helper.py +0 -0
  298. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/core/log_helper.py +0 -0
  299. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/core/mysql.py +0 -0
  300. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/core/proxy_helper.py +0 -0
  301. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/core/recorder_helper.py +0 -0
  302. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/core/report_helper.py +0 -0
  303. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/core/s3_manager.py +0 -0
  304. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/core/sb_driver.py +0 -0
  305. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/core/session_helper.py +0 -0
  306. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/core/settings_parser.py +0 -0
  307. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/core/style_sheet.py +0 -0
  308. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/core/testcase_manager.py +0 -0
  309. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/core/tour_helper.py +0 -0
  310. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/core/visual_helper.py +0 -0
  311. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/drivers/__init__.py +0 -0
  312. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/extensions/__init__.py +0 -0
  313. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/extensions/ad_block.zip +0 -0
  314. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/extensions/disable_csp.zip +0 -0
  315. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/extensions/recorder.zip +0 -0
  316. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/extensions/sbase_ext.zip +0 -0
  317. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/fixtures/__init__.py +0 -0
  318. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/fixtures/constants.py +0 -0
  319. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/fixtures/css_to_xpath.py +0 -0
  320. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/fixtures/errors.py +0 -0
  321. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/fixtures/js_utils.py +0 -0
  322. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/fixtures/page_actions.py +0 -0
  323. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/fixtures/page_utils.py +0 -0
  324. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/fixtures/shared_utils.py +0 -0
  325. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/fixtures/unittest_helper.py +0 -0
  326. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/fixtures/words.py +0 -0
  327. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/fixtures/xpath_to_css.py +0 -0
  328. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/js_code/__init__.py +0 -0
  329. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/js_code/active_css_js.py +0 -0
  330. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/js_code/live_js.py +0 -0
  331. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/js_code/recorder_js.py +0 -0
  332. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/masterqa/__init__.py +0 -0
  333. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/masterqa/master_qa.py +0 -0
  334. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/plugins/__init__.py +0 -0
  335. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/plugins/base_plugin.py +0 -0
  336. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/plugins/basic_test_info.py +0 -0
  337. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/plugins/db_reporting_plugin.py +0 -0
  338. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/plugins/page_source.py +0 -0
  339. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/plugins/s3_logging_plugin.py +0 -0
  340. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/plugins/screen_shots.py +0 -0
  341. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/resources/__init__.py +0 -0
  342. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/translate/__init__.py +0 -0
  343. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/translate/chinese.py +0 -0
  344. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/translate/dutch.py +0 -0
  345. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/translate/french.py +0 -0
  346. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/translate/italian.py +0 -0
  347. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/translate/japanese.py +0 -0
  348. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/translate/korean.py +0 -0
  349. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/translate/master_dict.py +0 -0
  350. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/translate/portuguese.py +0 -0
  351. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/translate/russian.py +0 -0
  352. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/translate/spanish.py +0 -0
  353. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/translate/translator.py +0 -0
  354. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/undetected/__init__.py +0 -0
  355. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/undetected/cdp.py +0 -0
  356. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/undetected/dprocess.py +0 -0
  357. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/undetected/options.py +0 -0
  358. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/undetected/patcher.py +0 -0
  359. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/undetected/reactor.py +0 -0
  360. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/undetected/webelement.py +0 -0
  361. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/utilities/__init__.py +0 -0
  362. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/utilities/selenium_grid/__init__.py +0 -0
  363. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/utilities/selenium_grid/download_selenium_server.py +0 -0
  364. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/utilities/selenium_grid/font_color +0 -0
  365. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/utilities/selenium_grid/grid-hub +0 -0
  366. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/utilities/selenium_grid/grid-node +0 -0
  367. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/utilities/selenium_grid/grid_hub.py +0 -0
  368. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/utilities/selenium_grid/grid_node.py +0 -0
  369. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/utilities/selenium_grid/register-grid-node.bat +0 -0
  370. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/utilities/selenium_grid/register-grid-node.sh +0 -0
  371. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/utilities/selenium_grid/start-grid-hub.bat +0 -0
  372. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/utilities/selenium_grid/start-grid-hub.sh +0 -0
  373. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/utilities/selenium_ide/__init__.py +0 -0
  374. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase/utilities/selenium_ide/convert_ide.py +0 -0
  375. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase.egg-info/SOURCES.txt +0 -0
  376. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase.egg-info/dependency_links.txt +0 -0
  377. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase.egg-info/entry_points.txt +0 -0
  378. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase.egg-info/requires.txt +0 -0
  379. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/seleniumbase.egg-info/top_level.txt +0 -0
  380. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/setup.cfg +0 -0
  381. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/setup.py +0 -0
  382. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/site/prepare.py +0 -0
  383. {seleniumbase-4.31.1 → seleniumbase-4.31.2}/virtualenv_install.sh +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: seleniumbase
3
- Version: 4.31.1
3
+ Version: 4.31.2
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
@@ -849,6 +849,7 @@ pytest test_coffee_cart.py --trace
849
849
  --rec-behave # (Same as Recorder Mode, but also generates behave-gherkin.)
850
850
  --rec-sleep # (If the Recorder is enabled, also records self.sleep calls.)
851
851
  --rec-print # (If the Recorder is enabled, prints output after tests end.)
852
+ --disable-cookies # (Disable Cookies on websites. Pages might break!)
852
853
  --disable-js # (Disable JavaScript on websites. Pages might break!)
853
854
  --disable-csp # (Disable the Content Security Policy of websites.)
854
855
  --disable-ws # (Disable Web Security on Chromium-based browsers.)
@@ -681,6 +681,7 @@ pytest test_coffee_cart.py --trace
681
681
  --rec-behave # (Same as Recorder Mode, but also generates behave-gherkin.)
682
682
  --rec-sleep # (If the Recorder is enabled, also records self.sleep calls.)
683
683
  --rec-print # (If the Recorder is enabled, prints output after tests end.)
684
+ --disable-cookies # (Disable Cookies on websites. Pages might break!)
684
685
  --disable-js # (Disable JavaScript on websites. Pages might break!)
685
686
  --disable-csp # (Disable the Content Security Policy of websites.)
686
687
  --disable-ws # (Disable Web Security on Chromium-based browsers.)
@@ -1,11 +1,13 @@
1
1
  """ The main purpose of this file is to demonstrate running SeleniumBase
2
2
  scripts without the use of Pytest by calling the script directly
3
- with Python or from a Python interactive interpreter. Based on
4
- whether relative imports work or don't, the script can autodetect
5
- how this file was run. With pure Python, it will initialize
6
- all the variables that would've been automatically initialized
7
- by the Pytest plugin. The setUp() and tearDown() methods are also
8
- now called from the script itself.
3
+ with Python or from a Python interactive interpreter.
4
+ Based on whether relative imports work or don't work, this script
5
+ can autodetect how this file was run. With pure Python, it
6
+ initializes all the variables that would've been automatically
7
+ initialized by the Pytest plugin. The setUp() and tearDown() methods
8
+ are also now called from the script itself.
9
+
10
+ (Note: The SB() and Driver() formats make this example obsolete.)
9
11
 
10
12
  One big advantage to running tests with Pytest is that most of this
11
13
  is done for you automatically, with the option to update any of the
@@ -13,8 +15,9 @@
13
15
  with other plugins, such as ones for generating test reports,
14
16
  handling multithreading, and parametrized tests. Depending on your
15
17
  specific needs, you may need to call SeleniumBase commands without
16
- using Pytest, and this example shows you how.
18
+ using Pytest, and this example shows you one way of doing that.
17
19
  """
20
+
18
21
  pure_python = False
19
22
  try:
20
23
  # Running with Pytest / (Finds test methods to run using autodiscovery)
@@ -33,9 +36,11 @@ if pure_python:
33
36
  sb.browser = "chrome"
34
37
  sb.is_behave = False
35
38
  sb.headless = False
39
+ sb.headless1 = False
36
40
  sb.headless2 = False
37
41
  sb.headed = False
38
42
  sb.xvfb = False
43
+ sb.xvfb_metrics = None
39
44
  sb.start_page = None
40
45
  sb.locale_code = None
41
46
  sb.protocol = "http"
@@ -79,9 +84,11 @@ if pure_python:
79
84
  sb.esc_end = False
80
85
  sb.use_wire = False
81
86
  sb.enable_3d_apis = False
87
+ sb.window_position = None
82
88
  sb.window_size = None
83
89
  sb.maximize_option = False
84
90
  sb.visual_baseline = False
91
+ sb.disable_cookies = False
85
92
  sb.disable_features = None
86
93
  sb._disable_beforeunload = False
87
94
  sb.save_screenshot_after_test = False
@@ -1,2 +1,2 @@
1
1
  # seleniumbase package
2
- __version__ = "4.31.1"
2
+ __version__ = "4.31.2"
@@ -71,7 +71,8 @@ behave -D agent="User Agent String" -D demo
71
71
  -D rec-behave (Same as Recorder Mode, but also generates behave-gherkin.)
72
72
  -D rec-sleep (If the Recorder is enabled, also records self.sleep calls.)
73
73
  -D rec-print (If the Recorder is enabled, prints output after tests end.)
74
- -D disable-js (Disable JavaScript on Chromium. May break websites!)
74
+ -D disable-cookies (Disable Cookies on websites. Pages might break!)
75
+ -D disable-js (Disable JavaScript on websites. Pages might break!)
75
76
  -D disable-csp (Disable the Content Security Policy of websites.)
76
77
  -D disable-ws (Disable Web Security on Chromium-based browsers.)
77
78
  -D enable-ws (Enable Web Security on Chromium-based browsers.)
@@ -180,6 +181,7 @@ def get_configured_sb(context):
180
181
  sb.database_env = "test"
181
182
  sb.log_path = constants.Logs.LATEST + os.sep
182
183
  sb.archive_logs = False
184
+ sb.disable_cookies = False
183
185
  sb.disable_js = False
184
186
  sb.disable_csp = False
185
187
  sb.disable_ws = False
@@ -535,6 +537,10 @@ def get_configured_sb(context):
535
537
  if low_key in ["archive-logs", "archive_logs"]:
536
538
  sb.archive_logs = True
537
539
  continue
540
+ # Handle: -D disable-cookies / disable_cookies
541
+ if low_key in ["disable-cookies", "disable_cookies"]:
542
+ sb.disable_cookies = True
543
+ continue
538
544
  # Handle: -D disable-js / disable_js
539
545
  if low_key in ["disable-js", "disable_js"]:
540
546
  sb.disable_js = True
@@ -1005,6 +1011,7 @@ def get_configured_sb(context):
1005
1011
  sb_config.pdb_option = sb.pdb_option
1006
1012
  sb_config.rec_behave = sb.rec_behave
1007
1013
  sb_config.rec_print = sb.rec_print
1014
+ sb_config.disable_cookies = sb.disable_cookies
1008
1015
  sb_config.disable_js = sb.disable_js
1009
1016
  sb_config.disable_csp = sb.disable_csp
1010
1017
  sb_config.record_sleep = sb.record_sleep
@@ -1544,6 +1544,7 @@ def _set_chrome_options(
1544
1544
  multi_proxy,
1545
1545
  user_agent,
1546
1546
  recorder_ext,
1547
+ disable_cookies,
1547
1548
  disable_js,
1548
1549
  disable_csp,
1549
1550
  enable_ws,
@@ -1621,6 +1622,8 @@ def _set_chrome_options(
1621
1622
  prefs["intl.accept_languages"] = locale_code
1622
1623
  if block_images:
1623
1624
  prefs["profile.managed_default_content_settings.images"] = 2
1625
+ if disable_cookies:
1626
+ prefs["profile.default_content_setting_values.cookies"] = 2
1624
1627
  if disable_js:
1625
1628
  prefs["profile.managed_default_content_settings.javascript"] = 2
1626
1629
  if do_not_track:
@@ -2016,6 +2019,7 @@ def _set_firefox_options(
2016
2019
  proxy_bypass_list,
2017
2020
  proxy_pac_url,
2018
2021
  user_agent,
2022
+ disable_cookies,
2019
2023
  disable_js,
2020
2024
  disable_csp,
2021
2025
  firefox_arg,
@@ -2089,6 +2093,8 @@ def _set_firefox_options(
2089
2093
  "security.mixed_content.block_active_content", False
2090
2094
  )
2091
2095
  options.set_preference("security.warn_submit_insecure", False)
2096
+ if disable_cookies:
2097
+ options.set_preference("network.cookie.cookieBehavior", 2)
2092
2098
  if disable_js:
2093
2099
  options.set_preference("javascript.enabled", False)
2094
2100
  if settings.DISABLE_CSP_ON_FIREFOX or disable_csp:
@@ -2188,6 +2194,7 @@ def get_driver(
2188
2194
  cap_file=None,
2189
2195
  cap_string=None,
2190
2196
  recorder_ext=False,
2197
+ disable_cookies=False,
2191
2198
  disable_js=False,
2192
2199
  disable_csp=False,
2193
2200
  enable_ws=False,
@@ -2348,6 +2355,7 @@ def get_driver(
2348
2355
  headless
2349
2356
  and (
2350
2357
  proxy_auth
2358
+ or disable_cookies
2351
2359
  or disable_js
2352
2360
  or ad_block_on
2353
2361
  or disable_csp
@@ -2402,6 +2410,7 @@ def get_driver(
2402
2410
  cap_file,
2403
2411
  cap_string,
2404
2412
  recorder_ext,
2413
+ disable_cookies,
2405
2414
  disable_js,
2406
2415
  disable_csp,
2407
2416
  enable_ws,
@@ -2459,6 +2468,7 @@ def get_driver(
2459
2468
  multi_proxy,
2460
2469
  user_agent,
2461
2470
  recorder_ext,
2471
+ disable_cookies,
2462
2472
  disable_js,
2463
2473
  disable_csp,
2464
2474
  enable_ws,
@@ -2520,6 +2530,7 @@ def get_remote_driver(
2520
2530
  cap_file,
2521
2531
  cap_string,
2522
2532
  recorder_ext,
2533
+ disable_cookies,
2523
2534
  disable_js,
2524
2535
  disable_csp,
2525
2536
  enable_ws,
@@ -2656,6 +2667,7 @@ def get_remote_driver(
2656
2667
  multi_proxy,
2657
2668
  user_agent,
2658
2669
  recorder_ext,
2670
+ disable_cookies,
2659
2671
  disable_js,
2660
2672
  disable_csp,
2661
2673
  enable_ws,
@@ -2751,6 +2763,7 @@ def get_remote_driver(
2751
2763
  proxy_bypass_list,
2752
2764
  proxy_pac_url,
2753
2765
  user_agent,
2766
+ disable_cookies,
2754
2767
  disable_js,
2755
2768
  disable_csp,
2756
2769
  firefox_arg,
@@ -2829,6 +2842,7 @@ def get_remote_driver(
2829
2842
  multi_proxy,
2830
2843
  user_agent,
2831
2844
  recorder_ext,
2845
+ disable_cookies,
2832
2846
  disable_js,
2833
2847
  disable_csp,
2834
2848
  enable_ws,
@@ -2949,6 +2963,7 @@ def get_local_driver(
2949
2963
  multi_proxy,
2950
2964
  user_agent,
2951
2965
  recorder_ext,
2966
+ disable_cookies,
2952
2967
  disable_js,
2953
2968
  disable_csp,
2954
2969
  enable_ws,
@@ -3030,6 +3045,7 @@ def get_local_driver(
3030
3045
  proxy_bypass_list,
3031
3046
  proxy_pac_url,
3032
3047
  user_agent,
3048
+ disable_cookies,
3033
3049
  disable_js,
3034
3050
  disable_csp,
3035
3051
  firefox_arg,
@@ -3386,6 +3402,8 @@ def get_local_driver(
3386
3402
  prefs["intl.accept_languages"] = locale_code
3387
3403
  if block_images:
3388
3404
  prefs["profile.managed_default_content_settings.images"] = 2
3405
+ if disable_cookies:
3406
+ prefs["profile.default_content_setting_values.cookies"] = 2
3389
3407
  if disable_js:
3390
3408
  prefs["profile.managed_default_content_settings.javascript"] = 2
3391
3409
  if do_not_track:
@@ -3796,6 +3814,7 @@ def get_local_driver(
3796
3814
  multi_proxy,
3797
3815
  user_agent,
3798
3816
  recorder_ext,
3817
+ disable_cookies,
3799
3818
  disable_js,
3800
3819
  disable_csp,
3801
3820
  enable_ws,
@@ -4321,6 +4340,7 @@ def get_local_driver(
4321
4340
  None, # multi_proxy
4322
4341
  None, # user_agent
4323
4342
  None, # recorder_ext
4343
+ disable_cookies,
4324
4344
  disable_js,
4325
4345
  disable_csp,
4326
4346
  enable_ws,
@@ -4563,6 +4583,7 @@ def get_local_driver(
4563
4583
  None, # multi_proxy
4564
4584
  None, # user_agent
4565
4585
  None, # recorder_ext
4586
+ disable_cookies,
4566
4587
  disable_js,
4567
4588
  disable_csp,
4568
4589
  enable_ws,
@@ -3760,6 +3760,7 @@ class BaseCase(unittest.TestCase):
3760
3760
  cap_file=None,
3761
3761
  cap_string=None,
3762
3762
  recorder_ext=None,
3763
+ disable_cookies=None,
3763
3764
  disable_js=None,
3764
3765
  disable_csp=None,
3765
3766
  enable_ws=None,
@@ -3820,6 +3821,7 @@ class BaseCase(unittest.TestCase):
3820
3821
  cap_file - the file containing desired capabilities for the browser
3821
3822
  cap_string - the string with desired capabilities for the browser
3822
3823
  recorder_ext - the option to enable the SBase Recorder extension
3824
+ disable_cookies - the option to disable Cookies (May break things!)
3823
3825
  disable_js - the option to disable JavaScript (May break websites!)
3824
3826
  disable_csp - an option to disable Chrome's Content Security Policy
3825
3827
  enable_ws - the option to enable the Web Security feature (Chrome)
@@ -3918,6 +3920,8 @@ class BaseCase(unittest.TestCase):
3918
3920
  user_agent = self.user_agent
3919
3921
  if recorder_ext is None:
3920
3922
  recorder_ext = self.recorder_ext
3923
+ if disable_cookies is None:
3924
+ disable_cookies = self.disable_cookies
3921
3925
  if disable_js is None:
3922
3926
  disable_js = self.disable_js
3923
3927
  if disable_csp is None:
@@ -4029,6 +4033,7 @@ class BaseCase(unittest.TestCase):
4029
4033
  cap_file=cap_file,
4030
4034
  cap_string=cap_string,
4031
4035
  recorder_ext=recorder_ext,
4036
+ disable_cookies=disable_cookies,
4032
4037
  disable_js=disable_js,
4033
4038
  disable_csp=disable_csp,
4034
4039
  enable_ws=enable_ws,
@@ -14394,6 +14399,7 @@ class BaseCase(unittest.TestCase):
14394
14399
  elif self.record_sleep and not self.recorder_mode:
14395
14400
  self.recorder_mode = True
14396
14401
  self.recorder_ext = True
14402
+ self.disable_cookies = sb_config.disable_cookies
14397
14403
  self.disable_js = sb_config.disable_js
14398
14404
  self.disable_csp = sb_config.disable_csp
14399
14405
  self.disable_ws = sb_config.disable_ws
@@ -14772,6 +14778,7 @@ class BaseCase(unittest.TestCase):
14772
14778
  cap_file=self.cap_file,
14773
14779
  cap_string=self.cap_string,
14774
14780
  recorder_ext=self.recorder_ext,
14781
+ disable_cookies=self.disable_cookies,
14775
14782
  disable_js=self.disable_js,
14776
14783
  disable_csp=self.disable_csp,
14777
14784
  enable_ws=self.enable_ws,
@@ -81,7 +81,8 @@ def Driver(
81
81
  cap_file=None, # The desired capabilities to use with a Selenium Grid.
82
82
  cap_string=None, # The desired capabilities to use with a Selenium Grid.
83
83
  recorder_ext=None, # Enables the SeleniumBase Recorder Chromium extension.
84
- disable_js=None, # Disable JavaScript on websites. Pages might break!
84
+ disable_cookies=None, # Disable Cookies on websites. (Pages might break!)
85
+ disable_js=None, # Disable JavaScript on websites. (Pages might break!)
85
86
  disable_csp=None, # Disable the Content Security Policy of websites.
86
87
  enable_ws=None, # Enable Web Security on Chromium-based browsers.
87
88
  disable_ws=None, # Reverse of "enable_ws". (None and False are different)
@@ -172,7 +173,8 @@ def Driver(
172
173
  cap_file (str): The desired capabilities to use with a Selenium Grid.
173
174
  cap_string (str): The desired capabilities to use with a Selenium Grid.
174
175
  recorder_ext (bool): Enables the SeleniumBase Recorder Chromium extension.
175
- disable_js (bool): Disable JavaScript on websites. Pages might break!
176
+ disable_cookies (bool): Disable Cookies on websites. (Pages might break!)
177
+ disable_js (bool): Disable JavaScript on websites. (Pages might break!)
176
178
  disable_csp (bool): Disable the Content Security Policy of websites.
177
179
  enable_ws (bool): Enable Web Security on Chromium-based browsers.
178
180
  disable_ws (bool): Reverse of "enable_ws". (None and False are different)
@@ -646,6 +648,11 @@ def Driver(
646
648
  use_auto_ext = True
647
649
  else:
648
650
  use_auto_ext = False
651
+ if disable_cookies is None:
652
+ if "--disable-cookies" in sys_argv:
653
+ disable_cookies = True
654
+ else:
655
+ disable_cookies = False
649
656
  if disable_js is None:
650
657
  if "--disable-js" in sys_argv:
651
658
  disable_js = True
@@ -772,6 +779,7 @@ def Driver(
772
779
  cap_file=cap_file,
773
780
  cap_string=cap_string,
774
781
  recorder_ext=recorder_ext,
782
+ disable_cookies=disable_cookies,
775
783
  disable_js=disable_js,
776
784
  disable_csp=disable_csp,
777
785
  enable_ws=enable_ws,
@@ -90,6 +90,7 @@ def pytest_addoption(parser):
90
90
  --rec-behave (Same as Recorder Mode, but also generates behave-gherkin.)
91
91
  --rec-sleep (If the Recorder is enabled, also records self.sleep calls.)
92
92
  --rec-print (If the Recorder is enabled, prints output after tests end.)
93
+ --disable-cookies (Disable Cookies on websites. Pages might break!)
93
94
  --disable-js (Disable JavaScript on websites. Pages might break!)
94
95
  --disable-csp (Disable the Content Security Policy of websites.)
95
96
  --disable-ws (Disable Web Security on Chromium-based browsers.)
@@ -992,6 +993,15 @@ def pytest_addoption(parser):
992
993
  help="""The option to disable JavaScript on web pages.
993
994
  Warning: Most web pages will stop working!""",
994
995
  )
996
+ parser.addoption(
997
+ "--disable_cookies",
998
+ "--disable-cookies",
999
+ action="store_true",
1000
+ dest="disable_cookies",
1001
+ default=False,
1002
+ help="""The option to disable Cookies on web pages.
1003
+ Warning: Several pages may stop working!""",
1004
+ )
995
1005
  parser.addoption(
996
1006
  "--disable_csp",
997
1007
  "--disable-csp",
@@ -1628,6 +1638,7 @@ def pytest_configure(config):
1628
1638
  elif sb_config.record_sleep and not sb_config.recorder_mode:
1629
1639
  sb_config.recorder_mode = True
1630
1640
  sb_config.recorder_ext = True
1641
+ sb_config.disable_cookies = config.getoption("disable_cookies")
1631
1642
  sb_config.disable_js = config.getoption("disable_js")
1632
1643
  sb_config.disable_csp = config.getoption("disable_csp")
1633
1644
  sb_config.disable_ws = config.getoption("disable_ws")
@@ -47,7 +47,8 @@ def SB(
47
47
  cap_file=None, # The desired capabilities to use with a Selenium Grid.
48
48
  cap_string=None, # The desired capabilities to use with a Selenium Grid.
49
49
  recorder_ext=None, # Enables the SeleniumBase Recorder Chromium extension.
50
- disable_js=None, # Disable JavaScript on websites. Pages might break!
50
+ disable_cookies=None, # Disable Cookies on websites. (Pages might break!)
51
+ disable_js=None, # Disable JavaScript on websites. (Pages might break!)
51
52
  disable_csp=None, # Disable the Content Security Policy of websites.
52
53
  enable_ws=None, # Enable Web Security on Chromium-based browsers.
53
54
  enable_sync=None, # Enable "Chrome Sync" on websites.
@@ -166,7 +167,8 @@ def SB(
166
167
  cap_file (str): The desired capabilities to use with a Selenium Grid.
167
168
  cap_string (str): The desired capabilities to use with a Selenium Grid.
168
169
  recorder_ext (bool): Enables the SeleniumBase Recorder Chromium extension.
169
- disable_js (bool): Disable JavaScript on websites. Pages might break!
170
+ disable_cookies (bool): Disable Cookies on websites. (Pages might break!)
171
+ disable_js (bool): Disable JavaScript on websites. (Pages might break!)
170
172
  disable_csp (bool): Disable the Content Security Policy of websites.
171
173
  enable_ws (bool): Enable Web Security on Chromium-based browsers.
172
174
  enable_sync (bool): Enable "Chrome Sync" on websites.
@@ -739,6 +741,11 @@ def SB(
739
741
  use_auto_ext = True
740
742
  else:
741
743
  use_auto_ext = False
744
+ if disable_cookies is None:
745
+ if "--disable-cookies" in sys_argv:
746
+ disable_cookies = True
747
+ else:
748
+ disable_cookies = False
742
749
  if disable_js is None:
743
750
  if "--disable-js" in sys_argv:
744
751
  disable_js = True
@@ -973,6 +980,7 @@ def SB(
973
980
  sb_config.log_cdp_events = log_cdp_events
974
981
  sb_config.no_sandbox = None
975
982
  sb_config.disable_gpu = None
983
+ sb_config.disable_cookies = disable_cookies
976
984
  sb_config.disable_js = disable_js
977
985
  sb_config._multithreaded = False
978
986
  sb_config.reuse_session = False
@@ -1081,6 +1089,7 @@ def SB(
1081
1089
  sb.log_cdp_events = sb_config.log_cdp_events
1082
1090
  sb.no_sandbox = sb_config.no_sandbox
1083
1091
  sb.disable_gpu = sb_config.disable_gpu
1092
+ sb.disable_cookies = sb_config.disable_cookies
1084
1093
  sb.disable_js = sb_config.disable_js
1085
1094
  sb._multithreaded = sb_config._multithreaded
1086
1095
  sb._reuse_session = sb_config.reuse_session
@@ -69,6 +69,7 @@ class SeleniumBrowser(Plugin):
69
69
  --rec-behave (Same as Recorder Mode, but also generates behave-gherkin.)
70
70
  --rec-sleep (If the Recorder is enabled, also records self.sleep calls.)
71
71
  --rec-print (If the Recorder is enabled, prints output after tests end.)
72
+ --disable-cookies (Disable Cookies on websites. Pages might break!)
72
73
  --disable-js (Disable JavaScript on websites. Pages might break!)
73
74
  --disable-csp (Disable the Content Security Policy of websites.)
74
75
  --disable-ws (Disable Web Security on Chromium-based browsers.)
@@ -710,6 +711,15 @@ class SeleniumBrowser(Plugin):
710
711
  help="""The option to disable JavaScript on web pages.
711
712
  Warning: Most web pages will stop working!""",
712
713
  )
714
+ parser.addoption(
715
+ "--disable_cookies",
716
+ "--disable-cookies",
717
+ action="store_true",
718
+ dest="disable_cookies",
719
+ default=False,
720
+ help="""The option to disable Cookies on web pages.
721
+ Warning: Several pages may stop working!""",
722
+ )
713
723
  parser.addoption(
714
724
  "--disable_csp",
715
725
  "--disable-csp",
@@ -1230,6 +1240,7 @@ class SeleniumBrowser(Plugin):
1230
1240
  elif self.options.record_sleep:
1231
1241
  test.test.recorder_mode = True
1232
1242
  test.test.recorder_ext = True
1243
+ test.test.disable_cookies = self.options.disable_cookies
1233
1244
  test.test.disable_js = self.options.disable_js
1234
1245
  test.test.disable_csp = self.options.disable_csp
1235
1246
  test.test.disable_ws = self.options.disable_ws
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: seleniumbase
3
- Version: 4.31.1
3
+ Version: 4.31.2
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
@@ -849,6 +849,7 @@ pytest test_coffee_cart.py --trace
849
849
  --rec-behave # (Same as Recorder Mode, but also generates behave-gherkin.)
850
850
  --rec-sleep # (If the Recorder is enabled, also records self.sleep calls.)
851
851
  --rec-print # (If the Recorder is enabled, prints output after tests end.)
852
+ --disable-cookies # (Disable Cookies on websites. Pages might break!)
852
853
  --disable-js # (Disable JavaScript on websites. Pages might break!)
853
854
  --disable-csp # (Disable the Content Security Policy of websites.)
854
855
  --disable-ws # (Disable Web Security on Chromium-based browsers.)
File without changes
File without changes
File without changes