Appium-Python-Client 4.0.0__tar.gz → 4.1.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (403) hide show
  1. Appium-Python-Client-4.1.0/Appium_Python_Client.egg-info/PKG-INFO +452 -0
  2. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/Appium_Python_Client.egg-info/SOURCES.txt +2 -70
  3. Appium-Python-Client-4.1.0/PKG-INFO +452 -0
  4. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/README.md +3 -3
  5. Appium-Python-Client-4.1.0/appium/options/mac/mac2/app_path_option.py +39 -0
  6. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/mac/mac2/base.py +2 -0
  7. Appium-Python-Client-4.1.0/appium/version.py +1 -0
  8. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/webdriver/common/appiumby.py +0 -1
  9. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/webdriver/extensions/android/common.py +1 -2
  10. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/webdriver/extensions/clipboard.py +19 -4
  11. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/webdriver/webdriver.py +4 -5
  12. Appium-Python-Client-4.1.0/docs/requirements.txt +2 -0
  13. Appium-Python-Client-4.0.0/Appium_Python_Client.egg-info/PKG-INFO +0 -452
  14. Appium-Python-Client-4.0.0/PKG-INFO +0 -452
  15. Appium-Python-Client-4.0.0/appium/version.py +0 -1
  16. Appium-Python-Client-4.0.0/docs/.DS_Store +0 -0
  17. Appium-Python-Client-4.0.0/docs/_build/doctrees/appium.common.doctree +0 -0
  18. Appium-Python-Client-4.0.0/docs/_build/doctrees/appium.doctree +0 -0
  19. Appium-Python-Client-4.0.0/docs/_build/doctrees/appium.webdriver.common.doctree +0 -0
  20. Appium-Python-Client-4.0.0/docs/_build/doctrees/appium.webdriver.doctree +0 -0
  21. Appium-Python-Client-4.0.0/docs/_build/doctrees/appium.webdriver.extensions.android.doctree +0 -0
  22. Appium-Python-Client-4.0.0/docs/_build/doctrees/appium.webdriver.extensions.doctree +0 -0
  23. Appium-Python-Client-4.0.0/docs/_build/doctrees/appium.webdriver.extensions.search_context.doctree +0 -0
  24. Appium-Python-Client-4.0.0/docs/_build/doctrees/environment.pickle +0 -0
  25. Appium-Python-Client-4.0.0/docs/_build/doctrees/index.doctree +0 -0
  26. Appium-Python-Client-4.0.0/docs/_build/html/.buildinfo +0 -4
  27. Appium-Python-Client-4.0.0/docs/_build/html/.nojekyll +0 -0
  28. Appium-Python-Client-4.0.0/docs/_build/html/_sources/appium.common.rst.txt +0 -37
  29. Appium-Python-Client-4.0.0/docs/_build/html/_sources/appium.rst.txt +0 -30
  30. Appium-Python-Client-4.0.0/docs/_build/html/_sources/appium.webdriver.common.rst.txt +0 -45
  31. Appium-Python-Client-4.0.0/docs/_build/html/_sources/appium.webdriver.extensions.android.rst.txt +0 -93
  32. Appium-Python-Client-4.0.0/docs/_build/html/_sources/appium.webdriver.extensions.rst.txt +0 -158
  33. Appium-Python-Client-4.0.0/docs/_build/html/_sources/appium.webdriver.extensions.search_context.rst.txt +0 -61
  34. Appium-Python-Client-4.0.0/docs/_build/html/_sources/appium.webdriver.rst.txt +0 -110
  35. Appium-Python-Client-4.0.0/docs/_build/html/_sources/index.rst.txt +0 -21
  36. Appium-Python-Client-4.0.0/docs/_build/html/_static/basic.css +0 -905
  37. Appium-Python-Client-4.0.0/docs/_build/html/_static/css/badge_only.css +0 -1
  38. Appium-Python-Client-4.0.0/docs/_build/html/_static/css/fonts/Roboto-Slab-Bold.woff +0 -0
  39. Appium-Python-Client-4.0.0/docs/_build/html/_static/css/fonts/Roboto-Slab-Bold.woff2 +0 -0
  40. Appium-Python-Client-4.0.0/docs/_build/html/_static/css/fonts/Roboto-Slab-Regular.woff +0 -0
  41. Appium-Python-Client-4.0.0/docs/_build/html/_static/css/fonts/Roboto-Slab-Regular.woff2 +0 -0
  42. Appium-Python-Client-4.0.0/docs/_build/html/_static/css/fonts/fontawesome-webfont.eot +0 -0
  43. Appium-Python-Client-4.0.0/docs/_build/html/_static/css/fonts/fontawesome-webfont.svg +0 -2671
  44. Appium-Python-Client-4.0.0/docs/_build/html/_static/css/fonts/fontawesome-webfont.ttf +0 -0
  45. Appium-Python-Client-4.0.0/docs/_build/html/_static/css/fonts/fontawesome-webfont.woff +0 -0
  46. Appium-Python-Client-4.0.0/docs/_build/html/_static/css/fonts/fontawesome-webfont.woff2 +0 -0
  47. Appium-Python-Client-4.0.0/docs/_build/html/_static/css/fonts/lato-bold-italic.woff +0 -0
  48. Appium-Python-Client-4.0.0/docs/_build/html/_static/css/fonts/lato-bold-italic.woff2 +0 -0
  49. Appium-Python-Client-4.0.0/docs/_build/html/_static/css/fonts/lato-bold.woff +0 -0
  50. Appium-Python-Client-4.0.0/docs/_build/html/_static/css/fonts/lato-bold.woff2 +0 -0
  51. Appium-Python-Client-4.0.0/docs/_build/html/_static/css/fonts/lato-normal-italic.woff +0 -0
  52. Appium-Python-Client-4.0.0/docs/_build/html/_static/css/fonts/lato-normal-italic.woff2 +0 -0
  53. Appium-Python-Client-4.0.0/docs/_build/html/_static/css/fonts/lato-normal.woff +0 -0
  54. Appium-Python-Client-4.0.0/docs/_build/html/_static/css/fonts/lato-normal.woff2 +0 -0
  55. Appium-Python-Client-4.0.0/docs/_build/html/_static/css/theme.css +0 -4
  56. Appium-Python-Client-4.0.0/docs/_build/html/_static/doctools.js +0 -323
  57. Appium-Python-Client-4.0.0/docs/_build/html/_static/documentation_options.js +0 -12
  58. Appium-Python-Client-4.0.0/docs/_build/html/_static/file.png +0 -0
  59. Appium-Python-Client-4.0.0/docs/_build/html/_static/jquery-3.5.1.js +0 -10872
  60. Appium-Python-Client-4.0.0/docs/_build/html/_static/jquery.js +0 -2
  61. Appium-Python-Client-4.0.0/docs/_build/html/_static/js/badge_only.js +0 -1
  62. Appium-Python-Client-4.0.0/docs/_build/html/_static/js/html5shiv-printshiv.min.js +0 -4
  63. Appium-Python-Client-4.0.0/docs/_build/html/_static/js/html5shiv.min.js +0 -4
  64. Appium-Python-Client-4.0.0/docs/_build/html/_static/js/theme.js +0 -1
  65. Appium-Python-Client-4.0.0/docs/_build/html/_static/language_data.js +0 -297
  66. Appium-Python-Client-4.0.0/docs/_build/html/_static/minus.png +0 -0
  67. Appium-Python-Client-4.0.0/docs/_build/html/_static/plus.png +0 -0
  68. Appium-Python-Client-4.0.0/docs/_build/html/_static/pygments.css +0 -74
  69. Appium-Python-Client-4.0.0/docs/_build/html/_static/searchtools.js +0 -529
  70. Appium-Python-Client-4.0.0/docs/_build/html/_static/underscore-1.13.1.js +0 -2042
  71. Appium-Python-Client-4.0.0/docs/_build/html/_static/underscore.js +0 -6
  72. Appium-Python-Client-4.0.0/docs/_build/html/appium.common.html +0 -175
  73. Appium-Python-Client-4.0.0/docs/_build/html/appium.html +0 -190
  74. Appium-Python-Client-4.0.0/docs/_build/html/appium.webdriver.common.html +0 -423
  75. Appium-Python-Client-4.0.0/docs/_build/html/appium.webdriver.extensions.android.html +0 -2311
  76. Appium-Python-Client-4.0.0/docs/_build/html/appium.webdriver.extensions.html +0 -1873
  77. Appium-Python-Client-4.0.0/docs/_build/html/appium.webdriver.extensions.search_context.html +0 -737
  78. Appium-Python-Client-4.0.0/docs/_build/html/appium.webdriver.html +0 -1388
  79. Appium-Python-Client-4.0.0/docs/_build/html/genindex.html +0 -2141
  80. Appium-Python-Client-4.0.0/docs/_build/html/index.html +0 -149
  81. Appium-Python-Client-4.0.0/docs/_build/html/objects.inv +0 -0
  82. Appium-Python-Client-4.0.0/docs/_build/html/py-modindex.html +0 -400
  83. Appium-Python-Client-4.0.0/docs/_build/html/search.html +0 -115
  84. Appium-Python-Client-4.0.0/docs/_build/html/searchindex.js +0 -1
  85. Appium-Python-Client-4.0.0/docs/requirements.txt +0 -2
  86. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/Appium_Python_Client.egg-info/dependency_links.txt +0 -0
  87. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/Appium_Python_Client.egg-info/requires.txt +0 -0
  88. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/Appium_Python_Client.egg-info/top_level.txt +0 -0
  89. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/LICENSE +0 -0
  90. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/MANIFEST.in +0 -0
  91. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/__init__.py +0 -0
  92. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/common/__init__.py +0 -0
  93. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/common/exceptions.py +0 -0
  94. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/common/helper.py +0 -0
  95. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/common/logger.py +0 -0
  96. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/__init__.py +0 -0
  97. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/__init__.py +0 -0
  98. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/common/__init__.py +0 -0
  99. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/common/adb/__init__.py +0 -0
  100. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/common/adb/adb_exec_timeout_option.py +0 -0
  101. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/common/adb/adb_port_option.py +0 -0
  102. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/common/adb/allow_delay_adb_option.py +0 -0
  103. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/common/adb/build_tools_version_option.py +0 -0
  104. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/common/adb/clear_device_logs_on_start_option.py +0 -0
  105. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/common/adb/ignore_hidden_api_policy_error_option.py +0 -0
  106. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/common/adb/logcat_filter_specs_option.py +0 -0
  107. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/common/adb/logcat_format_option.py +0 -0
  108. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/common/adb/mock_location_app_option.py +0 -0
  109. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/common/adb/remote_adb_host_option.py +0 -0
  110. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/common/adb/skip_logcat_capture_option.py +0 -0
  111. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/common/adb/suppress_kill_server_option.py +0 -0
  112. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/common/app/__init__.py +0 -0
  113. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/common/app/allow_test_packages_option.py +0 -0
  114. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/common/app/android_install_timeout_option.py +0 -0
  115. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/common/app/app_activity_option.py +0 -0
  116. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/common/app/app_package_option.py +0 -0
  117. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/common/app/app_wait_activity_option.py +0 -0
  118. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/common/app/app_wait_duration_option.py +0 -0
  119. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/common/app/app_wait_for_launch_option.py +0 -0
  120. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/common/app/app_wait_package_option.py +0 -0
  121. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/common/app/auto_grant_premissions_option.py +0 -0
  122. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/common/app/enforce_app_install_option.py +0 -0
  123. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/common/app/intent_action_option.py +0 -0
  124. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/common/app/intent_category_option.py +0 -0
  125. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/common/app/intent_flags_option.py +0 -0
  126. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/common/app/optional_intent_arguments_option.py +0 -0
  127. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/common/app/remote_apps_cache_limit_option.py +0 -0
  128. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/common/app/uninstall_other_packages_option.py +0 -0
  129. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/common/avd/__init__.py +0 -0
  130. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/common/avd/avd_args_option.py +0 -0
  131. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/common/avd/avd_env_option.py +0 -0
  132. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/common/avd/avd_launch_timeout_option.py +0 -0
  133. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/common/avd/avd_option.py +0 -0
  134. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/common/avd/avd_ready_timeout_option.py +0 -0
  135. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/common/avd/gps_enabled_option.py +0 -0
  136. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/common/avd/network_speed_option.py +0 -0
  137. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/common/context/__init__.py +0 -0
  138. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/common/context/auto_webview_timeout_option.py +0 -0
  139. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/common/context/chrome_logging_prefs_option.py +0 -0
  140. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/common/context/chrome_options_option.py +0 -0
  141. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/common/context/chromedriver_args_option.py +0 -0
  142. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/common/context/chromedriver_chrome_mapping_file_option.py +0 -0
  143. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/common/context/chromedriver_disable_build_check_option.py +0 -0
  144. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/common/context/chromedriver_executable_dir_option.py +0 -0
  145. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/common/context/chromedriver_executable_option.py +0 -0
  146. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/common/context/chromedriver_port_option.py +0 -0
  147. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/common/context/chromedriver_ports_option.py +0 -0
  148. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/common/context/chromedriver_use_system_executable_option.py +0 -0
  149. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/common/context/ensure_webviews_have_pages_option.py +0 -0
  150. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/common/context/extract_chrome_android_package_from_context_name_option.py +0 -0
  151. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/common/context/native_web_screenshot_option.py +0 -0
  152. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/common/context/recreate_chrome_driver_sessions_option.py +0 -0
  153. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/common/context/show_chromedriver_log_option.py +0 -0
  154. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/common/context/webview_devtools_port_option.py +0 -0
  155. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/common/localization/__init__.py +0 -0
  156. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/common/localization/locale_script_option.py +0 -0
  157. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/common/locking/__init__.py +0 -0
  158. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/common/locking/skip_unlock_option.py +0 -0
  159. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/common/locking/unlock_key_option.py +0 -0
  160. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/common/locking/unlock_strategy_option.py +0 -0
  161. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/common/locking/unlock_success_timeout_option.py +0 -0
  162. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/common/locking/unlock_type_option.py +0 -0
  163. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/common/mjpeg/__init__.py +0 -0
  164. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/common/mjpeg/mjpeg_screenshot_url_option.py +0 -0
  165. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/common/other/__init__.py +0 -0
  166. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/common/other/disable_suppress_accessibility_service_option.py +0 -0
  167. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/common/other/user_profile_option.py +0 -0
  168. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/common/signing/__init__.py +0 -0
  169. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/common/signing/key_alias_option.py +0 -0
  170. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/common/signing/key_password_option.py +0 -0
  171. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/common/signing/keystore_password_option.py +0 -0
  172. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/common/signing/keystore_path_option.py +0 -0
  173. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/common/signing/no_sign_option.py +0 -0
  174. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/common/signing/use_keystore_option.py +0 -0
  175. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/espresso/__init__.py +0 -0
  176. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/espresso/activity_options_option.py +0 -0
  177. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/espresso/app_locale_option.py +0 -0
  178. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/espresso/base.py +0 -0
  179. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/espresso/espresso_build_config_option.py +0 -0
  180. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/espresso/espresso_server_launch_timeout_option.py +0 -0
  181. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/espresso/force_espresso_rebuild_option.py +0 -0
  182. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/espresso/intent_options_option.py +0 -0
  183. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/espresso/show_gradle_log_option.py +0 -0
  184. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/uiautomator2/__init__.py +0 -0
  185. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/uiautomator2/base.py +0 -0
  186. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/uiautomator2/disable_window_animation_option.py +0 -0
  187. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/uiautomator2/mjpeg_server_port_option.py +0 -0
  188. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/uiautomator2/skip_device_initialization_option.py +0 -0
  189. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/uiautomator2/skip_server_installation_option.py +0 -0
  190. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/uiautomator2/uiautomator2_server_install_timeout_option.py +0 -0
  191. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/uiautomator2/uiautomator2_server_launch_timeout_option.py +0 -0
  192. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/android/uiautomator2/uiautomator2_server_read_timeout_option.py +0 -0
  193. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/common/__init__.py +0 -0
  194. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/common/app_option.py +0 -0
  195. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/common/auto_web_view_option.py +0 -0
  196. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/common/automation_name_option.py +0 -0
  197. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/common/base.py +0 -0
  198. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/common/browser_name_option.py +0 -0
  199. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/common/bundle_id_option.py +0 -0
  200. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/common/clear_system_files_option.py +0 -0
  201. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/common/device_name_option.py +0 -0
  202. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/common/enable_performance_logging_option.py +0 -0
  203. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/common/event_timings_option.py +0 -0
  204. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/common/full_reset_option.py +0 -0
  205. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/common/is_headless_option.py +0 -0
  206. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/common/language_option.py +0 -0
  207. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/common/locale_option.py +0 -0
  208. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/common/new_command_timeout_option.py +0 -0
  209. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/common/no_reset_option.py +0 -0
  210. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/common/orientation_option.py +0 -0
  211. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/common/other_apps_option.py +0 -0
  212. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/common/platform_version_option.py +0 -0
  213. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/common/postrun_option.py +0 -0
  214. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/common/prerun_option.py +0 -0
  215. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/common/print_page_source_on_find_failure_option.py +0 -0
  216. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/common/skip_log_capture_option.py +0 -0
  217. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/common/supports_capabilities.py +0 -0
  218. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/common/system_host_option.py +0 -0
  219. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/common/system_port_option.py +0 -0
  220. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/common/udid_option.py +0 -0
  221. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/gecko/__init__.py +0 -0
  222. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/gecko/android_storage_option.py +0 -0
  223. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/gecko/base.py +0 -0
  224. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/gecko/firefox_options_option.py +0 -0
  225. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/gecko/marionette_port_option.py +0 -0
  226. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/gecko/verbosity_option.py +0 -0
  227. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/__init__.py +0 -0
  228. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/safari/__init__.py +0 -0
  229. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/safari/automatic_inspection_option.py +0 -0
  230. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/safari/automatic_profiling_option.py +0 -0
  231. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/safari/base.py +0 -0
  232. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/safari/device_name_option.py +0 -0
  233. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/safari/device_type_option.py +0 -0
  234. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/safari/device_udid_option.py +0 -0
  235. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/safari/platform_build_version_option.py +0 -0
  236. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/safari/platform_version_option.py +0 -0
  237. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/safari/use_simulator_option.py +0 -0
  238. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/safari/webkit_webrtc_option.py +0 -0
  239. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/__init__.py +0 -0
  240. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/app/__init__.py +0 -0
  241. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/app/app_install_strategy_option.py +0 -0
  242. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/app/app_push_timeout_option.py +0 -0
  243. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/app/localizable_strings_dir_option.py +0 -0
  244. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/base.py +0 -0
  245. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/general/__init__.py +0 -0
  246. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/general/include_device_caps_to_session_info_option.py +0 -0
  247. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/general/reset_location_service_option.py +0 -0
  248. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/other/__init__.py +0 -0
  249. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/other/command_timeouts_option.py +0 -0
  250. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/other/launch_with_idb_option.py +0 -0
  251. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/other/show_ios_log_option.py +0 -0
  252. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/other/use_json_source_option.py +0 -0
  253. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/simulator/__init__.py +0 -0
  254. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/simulator/calendar_access_authorized_option.py +0 -0
  255. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/simulator/calendar_format_option.py +0 -0
  256. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/simulator/connect_hardware_keyboard_option.py +0 -0
  257. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/simulator/custom_ssl_cert_option.py +0 -0
  258. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/simulator/enforce_fresh_simulator_creation_option.py +0 -0
  259. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/simulator/force_simulator_software_keyboard_presence_option.py +0 -0
  260. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/simulator/ios_simulator_logs_predicate_option.py +0 -0
  261. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/simulator/keep_key_chains_option.py +0 -0
  262. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/simulator/keychains_exclude_patterns_option.py +0 -0
  263. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/simulator/permissions_option.py +0 -0
  264. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/simulator/reduce_motion_option.py +0 -0
  265. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/simulator/reset_on_session_start_only_option.py +0 -0
  266. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/simulator/scale_factor_option.py +0 -0
  267. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/simulator/shutdown_other_simulators_option.py +0 -0
  268. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/simulator/simulator_devices_set_path_option.py +0 -0
  269. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/simulator/simulator_pasteboard_automatic_sync_option.py +0 -0
  270. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/simulator/simulator_startup_timeout_option.py +0 -0
  271. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/simulator/simulator_trace_pointer_option.py +0 -0
  272. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/simulator/simulator_window_center_option.py +0 -0
  273. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/wda/__init__.py +0 -0
  274. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/wda/allow_provisioning_device_regitration_option.py +0 -0
  275. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/wda/auto_accept_alerts_option.py +0 -0
  276. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/wda/auto_disimiss_alerts_option.py +0 -0
  277. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/wda/derived_data_path_option.py +0 -0
  278. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/wda/disable_automatic_screenshots_option.py +0 -0
  279. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/wda/force_app_launch_option.py +0 -0
  280. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/wda/keychain_password_option.py +0 -0
  281. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/wda/keychain_path_option.py +0 -0
  282. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/wda/max_typing_frequency_option.py +0 -0
  283. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/wda/mjpeg_server_port_option.py +0 -0
  284. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/wda/process_arguments_option.py +0 -0
  285. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/wda/result_bundle_path_option.py +0 -0
  286. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/wda/screenshot_quality_option.py +0 -0
  287. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/wda/should_terminate_app_option.py +0 -0
  288. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/wda/should_use_singleton_test_manager_option.py +0 -0
  289. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/wda/show_xcode_log_option.py +0 -0
  290. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/wda/simple_is_visible_check_option.py +0 -0
  291. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/wda/updated_wda_bundle_id_option.py +0 -0
  292. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/wda/use_native_caching_strategy_option.py +0 -0
  293. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/wda/use_new_wda_option.py +0 -0
  294. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/wda/use_prebuilt_wda_option.py +0 -0
  295. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/wda/use_simple_build_test_option.py +0 -0
  296. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/wda/use_xctestrun_file_option.py +0 -0
  297. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/wda/wait_for_idle_timeout_option.py +0 -0
  298. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/wda/wait_for_quiescence_option.py +0 -0
  299. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/wda/wda_base_url_option.py +0 -0
  300. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/wda/wda_connection_timeout_option.py +0 -0
  301. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/wda/wda_eventloop_idle_delay_option.py +0 -0
  302. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/wda/wda_launch_timeout_option.py +0 -0
  303. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/wda/wda_local_port_option.py +0 -0
  304. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/wda/wda_startup_retries_option.py +0 -0
  305. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/wda/wda_startup_retry_interval_option.py +0 -0
  306. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/wda/web_driver_agent_url_option.py +0 -0
  307. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/wda/xcode_org_id_option.py +0 -0
  308. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/wda/xcode_signing_id_option.py +0 -0
  309. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/webview/__init__.py +0 -0
  310. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/webview/absolute_web_locations_option.py +0 -0
  311. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/webview/additional_webview_bundle_ids_option.py +0 -0
  312. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/webview/enable_async_execute_from_https_option.py +0 -0
  313. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/webview/full_context_list_option.py +0 -0
  314. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/webview/include_safari_in_webviews_option.py +0 -0
  315. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/webview/native_web_tap_option.py +0 -0
  316. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/webview/safari_garbage_collect_option.py +0 -0
  317. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/webview/safari_ignore_fraud_warning_option.py +0 -0
  318. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/webview/safari_ignore_web_hostnames_option.py +0 -0
  319. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/webview/safari_initial_url_option.py +0 -0
  320. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/webview/safari_log_all_communication_hex_dump_option.py +0 -0
  321. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/webview/safari_log_all_communication_option.py +0 -0
  322. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/webview/safari_open_links_in_background_option.py +0 -0
  323. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/webview/safari_socket_chunk_size_option.py +0 -0
  324. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/webview/safari_web_inspector_max_frame_length_option.py +0 -0
  325. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/webview/webkit_response_timeout_option.py +0 -0
  326. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/webview/webview_connect_retries_option.py +0 -0
  327. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/ios/xcuitest/webview/webview_connect_timeout_option.py +0 -0
  328. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/mac/__init__.py +0 -0
  329. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/mac/mac2/__init__.py +0 -0
  330. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/mac/mac2/arguments_option.py +0 -0
  331. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/mac/mac2/bootstrap_root_option.py +0 -0
  332. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/mac/mac2/environment_option.py +0 -0
  333. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/mac/mac2/server_startup_timeout_option.py +0 -0
  334. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/mac/mac2/show_server_logs_option.py +0 -0
  335. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/mac/mac2/skip_app_kill_option.py +0 -0
  336. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/mac/mac2/web_driver_agent_mac_url_option.py +0 -0
  337. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/windows/__init__.py +0 -0
  338. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/windows/windows/__init__.py +0 -0
  339. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/windows/windows/app_arguments_option.py +0 -0
  340. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/windows/windows/app_top_level_window_option.py +0 -0
  341. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/windows/windows/app_working_dir_option.py +0 -0
  342. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/windows/windows/base.py +0 -0
  343. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/windows/windows/create_session_timeout_option.py +0 -0
  344. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/windows/windows/expreimental_web_driver_option.py +0 -0
  345. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/options/windows/windows/wait_for_app_launch_option.py +0 -0
  346. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/protocols/__init__.py +0 -0
  347. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/protocols/webdriver/__init__.py +0 -0
  348. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/protocols/webdriver/can_execute_commands.py +0 -0
  349. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/protocols/webdriver/can_execute_scripts.py +0 -0
  350. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/protocols/webdriver/can_find_elements.py +0 -0
  351. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/protocols/webdriver/can_remember_extension_presence.py +0 -0
  352. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/py.typed +0 -0
  353. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/webdriver/__init__.py +0 -0
  354. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/webdriver/appium_connection.py +0 -0
  355. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/webdriver/appium_service.py +0 -0
  356. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/webdriver/applicationstate.py +0 -0
  357. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/webdriver/clipboard_content_type.py +0 -0
  358. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/webdriver/command_method.py +0 -0
  359. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/webdriver/common/__init__.py +0 -0
  360. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/webdriver/connectiontype.py +0 -0
  361. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/webdriver/errorhandler.py +0 -0
  362. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/webdriver/extensions/__init__.py +0 -0
  363. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/webdriver/extensions/action_helpers.py +0 -0
  364. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/webdriver/extensions/android/__init__.py +0 -0
  365. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/webdriver/extensions/android/activities.py +0 -0
  366. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/webdriver/extensions/android/display.py +0 -0
  367. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/webdriver/extensions/android/gsm.py +0 -0
  368. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/webdriver/extensions/android/nativekey.py +0 -0
  369. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/webdriver/extensions/android/network.py +0 -0
  370. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/webdriver/extensions/android/performance.py +0 -0
  371. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/webdriver/extensions/android/power.py +0 -0
  372. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/webdriver/extensions/android/sms.py +0 -0
  373. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/webdriver/extensions/android/system_bars.py +0 -0
  374. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/webdriver/extensions/applications.py +0 -0
  375. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/webdriver/extensions/context.py +0 -0
  376. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/webdriver/extensions/device_time.py +0 -0
  377. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/webdriver/extensions/execute_driver.py +0 -0
  378. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/webdriver/extensions/execute_mobile_command.py +0 -0
  379. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/webdriver/extensions/hw_actions.py +0 -0
  380. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/webdriver/extensions/images_comparison.py +0 -0
  381. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/webdriver/extensions/keyboard.py +0 -0
  382. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/webdriver/extensions/location.py +0 -0
  383. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/webdriver/extensions/log_event.py +0 -0
  384. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/webdriver/extensions/remote_fs.py +0 -0
  385. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/webdriver/extensions/screen_record.py +0 -0
  386. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/webdriver/extensions/session.py +0 -0
  387. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/webdriver/extensions/settings.py +0 -0
  388. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/webdriver/mobilecommand.py +0 -0
  389. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/webdriver/switch_to.py +0 -0
  390. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/appium/webdriver/webelement.py +0 -0
  391. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/docs/Makefile +0 -0
  392. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/docs/README.md +0 -0
  393. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/docs/conf.py +0 -0
  394. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/docs/generate.sh +0 -0
  395. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/docs/index.rst +0 -0
  396. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/docs/make.bat +0 -0
  397. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/docs/webdriver.common.rst +0 -0
  398. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/docs/webdriver.extensions.android.rst +0 -0
  399. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/docs/webdriver.extensions.rst +0 -0
  400. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/docs/webdriver.extensions.search_context.rst +0 -0
  401. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/docs/webdriver.rst +0 -0
  402. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/setup.cfg +0 -0
  403. {Appium-Python-Client-4.0.0 → Appium-Python-Client-4.1.0}/setup.py +0 -0
@@ -0,0 +1,452 @@
1
+ Metadata-Version: 2.1
2
+ Name: Appium-Python-Client
3
+ Version: 4.1.0
4
+ Summary: Python client for Appium
5
+ Home-page: http://appium.io/
6
+ Author: Isaac Murchie
7
+ Author-email: isaac@saucelabs.com
8
+ Maintainer: Kazuaki Matsuo, Mykola Mokhnach, Mori Atsushi
9
+ License: Apache 2.0
10
+ Description: # Appium Python Client
11
+
12
+ [![PyPI version](https://badge.fury.io/py/Appium-Python-Client.svg)](https://badge.fury.io/py/Appium-Python-Client)
13
+ [![Downloads](https://pepy.tech/badge/appium-python-client)](https://pepy.tech/project/appium-python-client)
14
+
15
+ [![Functional Tests](https://github.com/appium/python-client/actions/workflows/functional-test.yml/badge.svg)](https://github.com/appium/python-client/actions/workflows/functional-test.yml)
16
+
17
+ [![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)
18
+
19
+ An extension library for adding [WebDriver Protocol](https://www.w3.org/TR/webdriver/) and Appium commands to the Selenium Python language binding for use with the mobile testing framework [Appium](https://appium.io).
20
+
21
+ ## Getting the Appium Python client
22
+
23
+ There are three ways to install and use the Appium Python client.
24
+
25
+ 1. Install from [PyPi](https://pypi.org), as
26
+ ['Appium-Python-Client'](https://pypi.org/project/Appium-Python-Client/).
27
+
28
+ ```shell
29
+ pip install Appium-Python-Client
30
+ ```
31
+
32
+ You can see the history from [here](https://pypi.org/project/Appium-Python-Client/#history)
33
+
34
+ 2. Install from source, via [PyPi](https://pypi.org). From ['Appium-Python-Client'](https://pypi.org/project/Appium-Python-Client/),
35
+ download and unarchive the source tarball (Appium-Python-Client-X.X.tar.gz).
36
+
37
+ ```shell
38
+ tar -xvf Appium-Python-Client-X.X.tar.gz
39
+ cd Appium-Python-Client-X.X
40
+ python setup.py install
41
+ ```
42
+
43
+ 3. Install from source via [GitHub](https://github.com/appium/python-client).
44
+
45
+ ```shell
46
+ git clone git@github.com:appium/python-client.git
47
+ cd python-client
48
+ python setup.py install
49
+ ```
50
+
51
+ ## Compatibility Matrix
52
+
53
+ |Appium Python Client| Selenium binding| Python version |
54
+ |----|----|----|
55
+ |`3.0.0`+ |`4.12.0`+ | 3.8+ |
56
+ |`2.10.0` - `2.11.1` |`4.1.0` - `4.11.2` | 3.7+ |
57
+ |`2.2.0` - `2.9.0` |`4.1.0` - `4.9.0` | 3.7+ |
58
+ |`2.0.0` - `2.1.4` |`4.0.0` | 3.7+ |
59
+ |`1.0.0` - `1.3.0` |`3.x`| 3.7+ |
60
+ |`0.52` and below|`3.x`| 2.7, 3.4 - 3.7 |
61
+
62
+ The Appium Python Client depends on [Selenium Python binding](https://pypi.org/project/selenium/), thus
63
+ the Selenium Python binding update might affect the Appium Python Client behavior.
64
+ For example, some changes in the Selenium binding could break the Appium client.
65
+
66
+ > **Note**
67
+ > We strongly recommend you manage dependencies with version management tools such as Pipenv and requirements.txt
68
+ > to keep compatible version combinations.
69
+
70
+
71
+ ### Quick migration guide from v3 to v4
72
+ - Removal
73
+ - `MultiAction` and `TouchAction` are removed. Please use W3C WebDriver actions or `mobile:` extensions
74
+ - [appium/webdriver/extensions/action_helpers.py](appium/webdriver/extensions/action_helpers.py)
75
+ - https://www.selenium.dev/documentation/webdriver/actions_api/
76
+ - https://www.youtube.com/watch?v=oAJ7jwMNFVU
77
+ - https://appiumpro.com/editions/30-ios-specific-touch-action-methods
78
+ - https://appiumpro.com/editions/29-automating-complex-gestures-with-the-w3c-actions-api
79
+ - Deprecated `AppiumBy.WINDOWS_UI_AUTOMATION`, which has no usage right now.
80
+
81
+ ### Quick migration guide from v2 to v3
82
+ - `options` keyword argument in the `webdriver.Remote` constructor such as `XCUITestOptions` instead of `desired_capabilities`
83
+ - Available options are https://github.com/appium/python-client/tree/master/appium/options
84
+ - Please check the [Usage](#usage) below as an example.
85
+ - Not a "new" change, but the `desired_capabilities` argument has been removed since v3.
86
+ - Replacement
87
+ - `start_activity` method: Please use [`mobile: startActivity`](https://github.com/appium/appium-uiautomator2-driver?tab=readme-ov-file#mobile-startactivity)
88
+ - `launch_app`, `close_app` and `reset` methods: Please refer to https://github.com/appium/appium/issues/15807
89
+ - `available_ime_engines`, `is_ime_active`, `activate_ime_engine`, `deactivate_ime_engine` and `active_ime_engine` methods: Please use [`mobile: shell`](https://github.com/appium/appium-uiautomator2-driver?tab=readme-ov-file#mobile-shell)
90
+ - `set_value` and `set_text` methods: Please use `element.send_keys` or `send_keys` by W3C Actions
91
+ - Removal
92
+ - `end_test_coverage` method is no longer available
93
+ - `session` property is no longer available
94
+ - `all_sessions` property is no longer available
95
+
96
+ ### Quick migration guide from v1 to v2
97
+ - Enhancement
98
+ - Updated base Selenium Python binding version to v4
99
+ - Removed `forceMjsonwp` since Selenium v4 and Appium Python client v2 expect only W3C WebDriver protocol
100
+ - Methods `ActionHelpers#scroll`, `ActionHelpers#drag_and_drop`, `ActionHelpers#tap`, `ActionHelpers#swipe` and `ActionHelpers#flick` now call W3C actions as its backend
101
+ - Please check each behavior. Their behaviors could slightly differ.
102
+ - Added `strict_ssl` to relax SSL errors such as self-signed ones
103
+ - Deprecated
104
+ - `MultiAction` and `TouchAction` are deprecated. Please use W3C WebDriver actions or `mobile:` extensions
105
+ - `launch_app`, `close_app`, and `reset` are deprecated. Please read [issues#15807](https://github.com/appium/appium/issues/15807) for more details
106
+
107
+ #### MultiAction/TouchAction to W3C actions
108
+
109
+ On UIA2, some elements can be handled with `touch` pointer action instead of the default `mouse` pointer action in the Selenium Python client.
110
+ For example, the below action builder is to replace the default one with the `touch` pointer action.
111
+
112
+ ```python
113
+ from selenium.webdriver import ActionChains
114
+ from selenium.webdriver.common.actions import interaction
115
+ from selenium.webdriver.common.actions.action_builder import ActionBuilder
116
+ from selenium.webdriver.common.actions.pointer_input import PointerInput
117
+
118
+ actions = ActionChains(driver)
119
+ # override as 'touch' pointer action
120
+ actions.w3c_actions = ActionBuilder(driver, mouse=PointerInput(interaction.POINTER_TOUCH, "touch"))
121
+ actions.w3c_actions.pointer_action.move_to_location(start_x, start_y)
122
+ actions.w3c_actions.pointer_action.pointer_down()
123
+ actions.w3c_actions.pointer_action.pause(2)
124
+ actions.w3c_actions.pointer_action.move_to_location(end_x, end_y)
125
+ actions.w3c_actions.pointer_action.release()
126
+ actions.perform()
127
+ ```
128
+
129
+ - [appium/webdriver/extensions/action_helpers.py](appium/webdriver/extensions/action_helpers.py)
130
+ - https://www.selenium.dev/documentation/webdriver/actions_api/
131
+
132
+ ## Usage
133
+
134
+ The Appium Python Client is fully compliant with the WebDriver Protocol
135
+ including several helpers to make mobile testing in Python easier.
136
+
137
+ To use the new functionality now, and to use the superset of functions, instead of
138
+ including the Selenium `webdriver` module in your test code, use that from
139
+ Appium instead.
140
+
141
+ ```python
142
+ from appium import webdriver
143
+ ```
144
+
145
+ From there much of your test code will work with no change.
146
+
147
+ As a base for the following code examples, the following set up the [UnitTest](https://docs.python.org/3/library/unittest.html)
148
+ environment:
149
+
150
+ ```python
151
+ # Python/Pytest
152
+ import pytest
153
+
154
+ from appium import webdriver
155
+ # Options are only available since client version 2.3.0
156
+ # If you use an older client then switch to desired_capabilities
157
+ # instead: https://github.com/appium/python-client/pull/720
158
+ from appium.options.android import UiAutomator2Options
159
+ from appium.options.ios import XCUITestOptions
160
+ from appium.webdriver.appium_service import AppiumService
161
+ from appium.webdriver.common.appiumby import AppiumBy
162
+
163
+ APPIUM_PORT = 4723
164
+ APPIUM_HOST = '127.0.0.1'
165
+
166
+
167
+ # HINT: fixtures below could be extracted into conftest.py
168
+ # HINT: and shared across all tests in the suite
169
+ @pytest.fixture(scope='session')
170
+ def appium_service():
171
+ service = AppiumService()
172
+ service.start(
173
+ # Check the output of `appium server --help` for the complete list of
174
+ # server command line arguments
175
+ args=['--address', APPIUM_HOST, '-p', str(APPIUM_PORT)],
176
+ timeout_ms=20000,
177
+ )
178
+ yield service
179
+ service.stop()
180
+
181
+
182
+ def create_ios_driver(custom_opts = None):
183
+ options = XCUITestOptions()
184
+ options.platformVersion = '13.4'
185
+ options.udid = '123456789ABC'
186
+ if custom_opts is not None:
187
+ options.load_capabilities(custom_opts)
188
+ # Appium1 points to http://127.0.0.1:4723/wd/hub by default
189
+ return webdriver.Remote(f'http://{APPIUM_HOST}:{APPIUM_PORT}', options=options)
190
+
191
+
192
+ def create_android_driver(custom_opts = None):
193
+ options = UiAutomator2Options()
194
+ options.platformVersion = '10'
195
+ options.udid = '123456789ABC'
196
+ if custom_opts is not None:
197
+ options.load_capabilities(custom_opts)
198
+ # Appium1 points to http://127.0.0.1:4723/wd/hub by default
199
+ return webdriver.Remote(f'http://{APPIUM_HOST}:{APPIUM_PORT}', options=options)
200
+
201
+
202
+ @pytest.fixture
203
+ def ios_driver_factory():
204
+ return create_ios_driver
205
+
206
+
207
+ @pytest.fixture
208
+ def ios_driver():
209
+ # prefer this fixture if there is no need to customize driver options in tests
210
+ driver = create_ios_driver()
211
+ yield driver
212
+ driver.quit()
213
+
214
+
215
+ @pytest.fixture
216
+ def android_driver_factory():
217
+ return create_android_driver
218
+
219
+
220
+ @pytest.fixture
221
+ def android_driver():
222
+ # prefer this fixture if there is no need to customize driver options in tests
223
+ driver = create_android_driver()
224
+ yield driver
225
+ driver.quit()
226
+
227
+
228
+ def test_ios_click(appium_service, ios_driver_factory):
229
+ # Usage of the context manager ensures the driver session is closed properly
230
+ # after the test completes. Otherwise, make sure to call `driver.quit()` on teardown.
231
+ with ios_driver_factory({
232
+ 'appium:app': '/path/to/app/UICatalog.app.zip'
233
+ }) as driver:
234
+ el = driver.find_element(by=AppiumBy.ACCESSIBILITY_ID, value='item')
235
+ el.click()
236
+
237
+
238
+ def test_android_click(appium_service, android_driver_factory):
239
+ # Usage of the context manager ensures the driver session is closed properly
240
+ # after the test completes. Otherwise, make sure to call `driver.quit()` on teardown.
241
+ with android_driver_factory({
242
+ 'appium:app': '/path/to/app/test-app.apk',
243
+ 'appium:udid': '567890',
244
+ }) as driver:
245
+ el = driver.find_element(by=AppiumBy.ACCESSIBILITY_ID, value='item')
246
+ el.click()
247
+ ```
248
+
249
+ ## Direct Connect URLs
250
+
251
+ If your Selenium/Appium server decorates the new session capabilities response with the following keys:
252
+
253
+ - `directConnectProtocol`
254
+ - `directConnectHost`
255
+ - `directConnectPort`
256
+ - `directConnectPath`
257
+
258
+ Then python client will switch its endpoint to the one specified by the values of those keys.
259
+
260
+ ```python
261
+ from appium import webdriver
262
+ # Options are only available since client version 2.3.0
263
+ # If you use an older client then switch to desired_capabilities
264
+ # instead: https://github.com/appium/python-client/pull/720
265
+ from appium.options.ios import XCUITestOptions
266
+
267
+ # load_capabilities API could be used to
268
+ # load options mapping stored in a dictionary
269
+ options = XCUITestOptions().load_capabilities({
270
+ 'platformVersion': '13.4',
271
+ 'deviceName': 'iPhone Simulator',
272
+ 'app': '/full/path/to/app/UICatalog.app.zip',
273
+ })
274
+
275
+ driver = webdriver.Remote(
276
+ # Appium1 points to http://127.0.0.1:4723/wd/hub by default
277
+ 'http://127.0.0.1:4723',
278
+ options=options,
279
+ direct_connection=True
280
+ )
281
+ ```
282
+
283
+ ## Relax SSL validation
284
+
285
+ `strict_ssl` option allows you to send commands to an invalid certificate host like a self-signed one.
286
+
287
+ ```python
288
+ from appium import webdriver
289
+ # Options are only available since client version 2.3.0
290
+ # If you use an older client then switch to desired_capabilities
291
+ # instead: https://github.com/appium/python-client/pull/720
292
+ from appium.options.common import AppiumOptions
293
+
294
+ options = AppiumOptions()
295
+ options.platform_name = 'mac'
296
+ options.automation_name = 'safari'
297
+ # set_capability API allows to provide any custom option
298
+ # calls to it could be chained
299
+ options.set_capability('browser_name', 'safari')
300
+
301
+ # Appium1 points to http://127.0.0.1:4723/wd/hub by default
302
+ driver = webdriver.Remote('http://127.0.0.1:4723', options=options, strict_ssl=False)
303
+ ```
304
+
305
+ ## Set custom `AppiumConnection`
306
+
307
+ The first argument of `webdriver.Remote` can set an arbitrary command executor for you.
308
+
309
+ 1. Set init arguments for the pool manager Appium Python client uses to manage HTTP requests.
310
+
311
+ ```python
312
+ from appium import webdriver
313
+ from appium.options.ios import XCUITestOptions
314
+
315
+ import urllib3
316
+ from appium.webdriver.appium_connection import AppiumConnection
317
+
318
+ # Retry connection error up to 3 times.
319
+ init_args_for_pool_manage = {
320
+ 'retries': urllib3.util.retry.Retry(total=3, connect=3, read=False)
321
+ }
322
+ appium_executor = AppiumConnection(
323
+ remote_server_addr='http://127.0.0.1:4723',
324
+ init_args_for_pool_manage=init_args_for_pool_manage
325
+ )
326
+
327
+ options = XCUITestOptions()
328
+ options.platformVersion = '13.4'
329
+ options.udid = '123456789ABC'
330
+ options.app = '/full/path/to/app/UICatalog.app.zip'
331
+ driver = webdriver.Remote(appium_executor, options=options)
332
+ ```
333
+
334
+
335
+ 2. Define a subclass of `AppiumConnection`
336
+
337
+ ```python
338
+ from appium import webdriver
339
+ from appium.options.ios import XCUITestOptions
340
+
341
+ from appium.webdriver.appium_connection import AppiumConnection
342
+
343
+ class CustomAppiumConnection(AppiumConnection):
344
+ # Can add your own methods for the custom class
345
+ pass
346
+
347
+ custom_executor = CustomAppiumConnection(remote_server_addr='http://127.0.0.1:4723')
348
+
349
+ options = XCUITestOptions().load_capabilities({
350
+ 'platformVersion': '13.4',
351
+ 'deviceName': 'iPhone Simulator',
352
+ 'app': '/full/path/to/app/UICatalog.app.zip',
353
+ })
354
+ driver = webdriver.Remote(custom_executor, options=options)
355
+
356
+ ```
357
+
358
+
359
+ ## Documentation
360
+
361
+ - https://appium.github.io/python-client-sphinx/ is detailed documentation
362
+ - [functional tests](test/functional) also may help to see concrete examples.
363
+
364
+ ## Development
365
+
366
+ - Code Style: [PEP-0008](https://www.python.org/dev/peps/pep-0008/)
367
+ - Apply `black`, `isort` and `mypy` as pre commit hook
368
+ - Run `make` command for development. See `make help` output for details
369
+ - Docstring style: [Google Style](https://sphinxcontrib-napoleon.readthedocs.io/en/latest/example_google.html)
370
+ - `gitchangelog` generates `CHANGELOG.rst`
371
+
372
+ ### Setup
373
+
374
+ - `pip install --user pipenv`
375
+ - `python -m pipenv lock --clear`
376
+ - If you experience `Locking Failed! unknown locale: UTF-8` error, then refer [pypa/pipenv#187](https://github.com/pypa/pipenv/issues/187) to solve it.
377
+ - `python -m pipenv install --dev --system`
378
+ - `pre-commit install`
379
+
380
+ ### Run tests
381
+
382
+ You can run all of the tests running on CI via `tox` in your local.
383
+
384
+ ```bash
385
+ $ tox
386
+ ```
387
+
388
+ You also can run particular tests like below.
389
+
390
+ #### Unit
391
+
392
+ ```bash
393
+ $ pytest test/unit
394
+ ```
395
+
396
+ Run with `pytest-xdist`
397
+
398
+ ```bash
399
+ $ pytest -n 2 test/unit
400
+ ```
401
+
402
+ #### Functional
403
+
404
+ ```bash
405
+ $ pytest test/functional/ios/search_context/find_by_ios_class_chain_tests.py
406
+ ```
407
+
408
+ #### In parallel for iOS
409
+
410
+ 1. Create simulators named 'iPhone X - 8100' and 'iPhone X - 8101'
411
+ 2. Install test libraries via pip, `pip install pytest pytest-xdist`
412
+ 3. Run tests
413
+
414
+ ```bash
415
+ $ pytest -n 2 test/functional/ios/search_context/find_by_ios_class_chain_tests.py
416
+ ```
417
+
418
+ ## Release
419
+
420
+ Follow the below steps.
421
+
422
+ ```bash
423
+ $ pip install twine
424
+ $ pip install git+git://github.com/vaab/gitchangelog.git # Getting via GitHub repository is necessary for Python 3.7
425
+ # Type the new version number and 'yes' if you can publish it
426
+ # You can test the command with DRY_RUN
427
+ $ DRY_RUN=1 ./release.sh
428
+ $ ./release.sh # release
429
+ ```
430
+
431
+ ## License
432
+
433
+ Apache License v2
434
+
435
+ Keywords: appium,selenium,selenium 4,python client,mobile automation
436
+ Platform: UNKNOWN
437
+ Classifier: Development Status :: 5 - Production/Stable
438
+ Classifier: Programming Language :: Python
439
+ Classifier: Programming Language :: Python :: 3.8
440
+ Classifier: Programming Language :: Python :: 3.9
441
+ Classifier: Programming Language :: Python :: 3.10
442
+ Classifier: Programming Language :: Python :: 3.11
443
+ Classifier: Environment :: Console
444
+ Classifier: Environment :: MacOS X
445
+ Classifier: Environment :: Win32 (MS Windows)
446
+ Classifier: Intended Audience :: Developers
447
+ Classifier: Intended Audience :: Other Audience
448
+ Classifier: License :: OSI Approved :: Apache Software License
449
+ Classifier: Operating System :: OS Independent
450
+ Classifier: Topic :: Software Development :: Quality Assurance
451
+ Classifier: Topic :: Software Development :: Testing
452
+ Description-Content-Type: text/markdown
@@ -249,6 +249,7 @@ appium/options/ios/xcuitest/webview/webview_connect_retries_option.py
249
249
  appium/options/ios/xcuitest/webview/webview_connect_timeout_option.py
250
250
  appium/options/mac/__init__.py
251
251
  appium/options/mac/mac2/__init__.py
252
+ appium/options/mac/mac2/app_path_option.py
252
253
  appium/options/mac/mac2/arguments_option.py
253
254
  appium/options/mac/mac2/base.py
254
255
  appium/options/mac/mac2/bootstrap_root_option.py
@@ -314,7 +315,6 @@ appium/webdriver/extensions/android/performance.py
314
315
  appium/webdriver/extensions/android/power.py
315
316
  appium/webdriver/extensions/android/sms.py
316
317
  appium/webdriver/extensions/android/system_bars.py
317
- docs/.DS_Store
318
318
  docs/Makefile
319
319
  docs/README.md
320
320
  docs/conf.py
@@ -326,72 +326,4 @@ docs/webdriver.common.rst
326
326
  docs/webdriver.extensions.android.rst
327
327
  docs/webdriver.extensions.rst
328
328
  docs/webdriver.extensions.search_context.rst
329
- docs/webdriver.rst
330
- docs/_build/doctrees/appium.common.doctree
331
- docs/_build/doctrees/appium.doctree
332
- docs/_build/doctrees/appium.webdriver.common.doctree
333
- docs/_build/doctrees/appium.webdriver.doctree
334
- docs/_build/doctrees/appium.webdriver.extensions.android.doctree
335
- docs/_build/doctrees/appium.webdriver.extensions.doctree
336
- docs/_build/doctrees/appium.webdriver.extensions.search_context.doctree
337
- docs/_build/doctrees/environment.pickle
338
- docs/_build/doctrees/index.doctree
339
- docs/_build/html/.buildinfo
340
- docs/_build/html/.nojekyll
341
- docs/_build/html/appium.common.html
342
- docs/_build/html/appium.html
343
- docs/_build/html/appium.webdriver.common.html
344
- docs/_build/html/appium.webdriver.extensions.android.html
345
- docs/_build/html/appium.webdriver.extensions.html
346
- docs/_build/html/appium.webdriver.extensions.search_context.html
347
- docs/_build/html/appium.webdriver.html
348
- docs/_build/html/genindex.html
349
- docs/_build/html/index.html
350
- docs/_build/html/objects.inv
351
- docs/_build/html/py-modindex.html
352
- docs/_build/html/search.html
353
- docs/_build/html/searchindex.js
354
- docs/_build/html/_sources/appium.common.rst.txt
355
- docs/_build/html/_sources/appium.rst.txt
356
- docs/_build/html/_sources/appium.webdriver.common.rst.txt
357
- docs/_build/html/_sources/appium.webdriver.extensions.android.rst.txt
358
- docs/_build/html/_sources/appium.webdriver.extensions.rst.txt
359
- docs/_build/html/_sources/appium.webdriver.extensions.search_context.rst.txt
360
- docs/_build/html/_sources/appium.webdriver.rst.txt
361
- docs/_build/html/_sources/index.rst.txt
362
- docs/_build/html/_static/basic.css
363
- docs/_build/html/_static/doctools.js
364
- docs/_build/html/_static/documentation_options.js
365
- docs/_build/html/_static/file.png
366
- docs/_build/html/_static/jquery-3.5.1.js
367
- docs/_build/html/_static/jquery.js
368
- docs/_build/html/_static/language_data.js
369
- docs/_build/html/_static/minus.png
370
- docs/_build/html/_static/plus.png
371
- docs/_build/html/_static/pygments.css
372
- docs/_build/html/_static/searchtools.js
373
- docs/_build/html/_static/underscore-1.13.1.js
374
- docs/_build/html/_static/underscore.js
375
- docs/_build/html/_static/css/badge_only.css
376
- docs/_build/html/_static/css/theme.css
377
- docs/_build/html/_static/css/fonts/Roboto-Slab-Bold.woff
378
- docs/_build/html/_static/css/fonts/Roboto-Slab-Bold.woff2
379
- docs/_build/html/_static/css/fonts/Roboto-Slab-Regular.woff
380
- docs/_build/html/_static/css/fonts/Roboto-Slab-Regular.woff2
381
- docs/_build/html/_static/css/fonts/fontawesome-webfont.eot
382
- docs/_build/html/_static/css/fonts/fontawesome-webfont.svg
383
- docs/_build/html/_static/css/fonts/fontawesome-webfont.ttf
384
- docs/_build/html/_static/css/fonts/fontawesome-webfont.woff
385
- docs/_build/html/_static/css/fonts/fontawesome-webfont.woff2
386
- docs/_build/html/_static/css/fonts/lato-bold-italic.woff
387
- docs/_build/html/_static/css/fonts/lato-bold-italic.woff2
388
- docs/_build/html/_static/css/fonts/lato-bold.woff
389
- docs/_build/html/_static/css/fonts/lato-bold.woff2
390
- docs/_build/html/_static/css/fonts/lato-normal-italic.woff
391
- docs/_build/html/_static/css/fonts/lato-normal-italic.woff2
392
- docs/_build/html/_static/css/fonts/lato-normal.woff
393
- docs/_build/html/_static/css/fonts/lato-normal.woff2
394
- docs/_build/html/_static/js/badge_only.js
395
- docs/_build/html/_static/js/html5shiv-printshiv.min.js
396
- docs/_build/html/_static/js/html5shiv.min.js
397
- docs/_build/html/_static/js/theme.js
329
+ docs/webdriver.rst