Appium-Python-Client 3.1.0__tar.gz → 3.2.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 (401) hide show
  1. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/Appium_Python_Client.egg-info/PKG-INFO +23 -17
  2. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/PKG-INFO +23 -17
  3. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/README.md +22 -13
  4. Appium-Python-Client-3.2.0/appium/version.py +1 -0
  5. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/common/multi_action.py +4 -2
  6. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/common/touch_action.py +1 -1
  7. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/extensions/action_helpers.py +7 -2
  8. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/webdriver.py +5 -2
  9. Appium-Python-Client-3.1.0/appium/version.py +0 -1
  10. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/Appium_Python_Client.egg-info/SOURCES.txt +0 -0
  11. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/Appium_Python_Client.egg-info/dependency_links.txt +0 -0
  12. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/Appium_Python_Client.egg-info/requires.txt +0 -0
  13. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/Appium_Python_Client.egg-info/top_level.txt +0 -0
  14. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/LICENSE +0 -0
  15. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/MANIFEST.in +0 -0
  16. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/__init__.py +0 -0
  17. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/common/__init__.py +0 -0
  18. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/common/exceptions.py +0 -0
  19. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/common/helper.py +0 -0
  20. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/common/logger.py +0 -0
  21. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/__init__.py +0 -0
  22. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/__init__.py +0 -0
  23. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/__init__.py +0 -0
  24. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/adb/__init__.py +0 -0
  25. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/adb/adb_exec_timeout_option.py +0 -0
  26. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/adb/adb_port_option.py +0 -0
  27. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/adb/allow_delay_adb_option.py +0 -0
  28. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/adb/build_tools_version_option.py +0 -0
  29. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/adb/clear_device_logs_on_start_option.py +0 -0
  30. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/adb/ignore_hidden_api_policy_error_option.py +0 -0
  31. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/adb/logcat_filter_specs_option.py +0 -0
  32. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/adb/logcat_format_option.py +0 -0
  33. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/adb/mock_location_app_option.py +0 -0
  34. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/adb/remote_adb_host_option.py +0 -0
  35. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/adb/skip_logcat_capture_option.py +0 -0
  36. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/adb/suppress_kill_server_option.py +0 -0
  37. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/app/__init__.py +0 -0
  38. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/app/allow_test_packages_option.py +0 -0
  39. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/app/android_install_timeout_option.py +0 -0
  40. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/app/app_activity_option.py +0 -0
  41. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/app/app_package_option.py +0 -0
  42. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/app/app_wait_activity_option.py +0 -0
  43. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/app/app_wait_duration_option.py +0 -0
  44. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/app/app_wait_for_launch_option.py +0 -0
  45. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/app/app_wait_package_option.py +0 -0
  46. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/app/auto_grant_premissions_option.py +0 -0
  47. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/app/enforce_app_install_option.py +0 -0
  48. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/app/intent_action_option.py +0 -0
  49. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/app/intent_category_option.py +0 -0
  50. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/app/intent_flags_option.py +0 -0
  51. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/app/optional_intent_arguments_option.py +0 -0
  52. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/app/remote_apps_cache_limit_option.py +0 -0
  53. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/app/uninstall_other_packages_option.py +0 -0
  54. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/avd/__init__.py +0 -0
  55. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/avd/avd_args_option.py +0 -0
  56. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/avd/avd_env_option.py +0 -0
  57. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/avd/avd_launch_timeout_option.py +0 -0
  58. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/avd/avd_option.py +0 -0
  59. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/avd/avd_ready_timeout_option.py +0 -0
  60. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/avd/gps_enabled_option.py +0 -0
  61. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/avd/network_speed_option.py +0 -0
  62. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/context/__init__.py +0 -0
  63. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/context/auto_webview_timeout_option.py +0 -0
  64. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/context/chrome_logging_prefs_option.py +0 -0
  65. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/context/chrome_options_option.py +0 -0
  66. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/context/chromedriver_args_option.py +0 -0
  67. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/context/chromedriver_chrome_mapping_file_option.py +0 -0
  68. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/context/chromedriver_disable_build_check_option.py +0 -0
  69. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/context/chromedriver_executable_dir_option.py +0 -0
  70. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/context/chromedriver_executable_option.py +0 -0
  71. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/context/chromedriver_port_option.py +0 -0
  72. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/context/chromedriver_ports_option.py +0 -0
  73. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/context/chromedriver_use_system_executable_option.py +0 -0
  74. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/context/ensure_webviews_have_pages_option.py +0 -0
  75. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/context/extract_chrome_android_package_from_context_name_option.py +0 -0
  76. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/context/native_web_screenshot_option.py +0 -0
  77. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/context/recreate_chrome_driver_sessions_option.py +0 -0
  78. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/context/show_chromedriver_log_option.py +0 -0
  79. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/context/webview_devtools_port_option.py +0 -0
  80. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/localization/__init__.py +0 -0
  81. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/localization/locale_script_option.py +0 -0
  82. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/locking/__init__.py +0 -0
  83. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/locking/skip_unlock_option.py +0 -0
  84. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/locking/unlock_key_option.py +0 -0
  85. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/locking/unlock_strategy_option.py +0 -0
  86. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/locking/unlock_success_timeout_option.py +0 -0
  87. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/locking/unlock_type_option.py +0 -0
  88. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/mjpeg/__init__.py +0 -0
  89. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/mjpeg/mjpeg_screenshot_url_option.py +0 -0
  90. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/other/__init__.py +0 -0
  91. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/other/disable_suppress_accessibility_service_option.py +0 -0
  92. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/other/user_profile_option.py +0 -0
  93. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/signing/__init__.py +0 -0
  94. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/signing/key_alias_option.py +0 -0
  95. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/signing/key_password_option.py +0 -0
  96. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/signing/keystore_password_option.py +0 -0
  97. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/signing/keystore_path_option.py +0 -0
  98. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/signing/no_sign_option.py +0 -0
  99. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/signing/use_keystore_option.py +0 -0
  100. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/espresso/__init__.py +0 -0
  101. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/espresso/activity_options_option.py +0 -0
  102. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/espresso/app_locale_option.py +0 -0
  103. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/espresso/base.py +0 -0
  104. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/espresso/espresso_build_config_option.py +0 -0
  105. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/espresso/espresso_server_launch_timeout_option.py +0 -0
  106. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/espresso/force_espresso_rebuild_option.py +0 -0
  107. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/espresso/intent_options_option.py +0 -0
  108. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/espresso/show_gradle_log_option.py +0 -0
  109. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/uiautomator2/__init__.py +0 -0
  110. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/uiautomator2/base.py +0 -0
  111. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/uiautomator2/disable_window_animation_option.py +0 -0
  112. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/uiautomator2/mjpeg_server_port_option.py +0 -0
  113. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/uiautomator2/skip_device_initialization_option.py +0 -0
  114. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/uiautomator2/skip_server_installation_option.py +0 -0
  115. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/uiautomator2/uiautomator2_server_install_timeout_option.py +0 -0
  116. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/uiautomator2/uiautomator2_server_launch_timeout_option.py +0 -0
  117. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/uiautomator2/uiautomator2_server_read_timeout_option.py +0 -0
  118. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/common/__init__.py +0 -0
  119. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/common/app_option.py +0 -0
  120. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/common/auto_web_view_option.py +0 -0
  121. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/common/automation_name_option.py +0 -0
  122. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/common/base.py +0 -0
  123. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/common/browser_name_option.py +0 -0
  124. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/common/bundle_id_option.py +0 -0
  125. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/common/clear_system_files_option.py +0 -0
  126. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/common/device_name_option.py +0 -0
  127. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/common/enable_performance_logging_option.py +0 -0
  128. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/common/event_timings_option.py +0 -0
  129. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/common/full_reset_option.py +0 -0
  130. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/common/is_headless_option.py +0 -0
  131. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/common/language_option.py +0 -0
  132. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/common/locale_option.py +0 -0
  133. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/common/new_command_timeout_option.py +0 -0
  134. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/common/no_reset_option.py +0 -0
  135. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/common/orientation_option.py +0 -0
  136. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/common/other_apps_option.py +0 -0
  137. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/common/platform_version_option.py +0 -0
  138. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/common/postrun_option.py +0 -0
  139. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/common/prerun_option.py +0 -0
  140. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/common/print_page_source_on_find_failure_option.py +0 -0
  141. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/common/skip_log_capture_option.py +0 -0
  142. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/common/supports_capabilities.py +0 -0
  143. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/common/system_host_option.py +0 -0
  144. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/common/system_port_option.py +0 -0
  145. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/common/udid_option.py +0 -0
  146. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/gecko/__init__.py +0 -0
  147. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/gecko/android_storage_option.py +0 -0
  148. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/gecko/base.py +0 -0
  149. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/gecko/firefox_options_option.py +0 -0
  150. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/gecko/marionette_port_option.py +0 -0
  151. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/gecko/verbosity_option.py +0 -0
  152. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/__init__.py +0 -0
  153. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/safari/__init__.py +0 -0
  154. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/safari/automatic_inspection_option.py +0 -0
  155. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/safari/automatic_profiling_option.py +0 -0
  156. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/safari/base.py +0 -0
  157. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/safari/device_name_option.py +0 -0
  158. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/safari/device_type_option.py +0 -0
  159. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/safari/device_udid_option.py +0 -0
  160. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/safari/platform_build_version_option.py +0 -0
  161. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/safari/platform_version_option.py +0 -0
  162. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/safari/use_simulator_option.py +0 -0
  163. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/safari/webkit_webrtc_option.py +0 -0
  164. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/__init__.py +0 -0
  165. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/app/__init__.py +0 -0
  166. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/app/app_install_strategy_option.py +0 -0
  167. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/app/app_push_timeout_option.py +0 -0
  168. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/app/localizable_strings_dir_option.py +0 -0
  169. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/base.py +0 -0
  170. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/general/__init__.py +0 -0
  171. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/general/include_device_caps_to_session_info_option.py +0 -0
  172. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/general/reset_location_service_option.py +0 -0
  173. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/other/__init__.py +0 -0
  174. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/other/command_timeouts_option.py +0 -0
  175. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/other/launch_with_idb_option.py +0 -0
  176. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/other/show_ios_log_option.py +0 -0
  177. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/other/use_json_source_option.py +0 -0
  178. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/simulator/__init__.py +0 -0
  179. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/simulator/calendar_access_authorized_option.py +0 -0
  180. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/simulator/calendar_format_option.py +0 -0
  181. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/simulator/connect_hardware_keyboard_option.py +0 -0
  182. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/simulator/custom_ssl_cert_option.py +0 -0
  183. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/simulator/enforce_fresh_simulator_creation_option.py +0 -0
  184. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/simulator/force_simulator_software_keyboard_presence_option.py +0 -0
  185. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/simulator/ios_simulator_logs_predicate_option.py +0 -0
  186. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/simulator/keep_key_chains_option.py +0 -0
  187. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/simulator/keychains_exclude_patterns_option.py +0 -0
  188. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/simulator/permissions_option.py +0 -0
  189. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/simulator/reduce_motion_option.py +0 -0
  190. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/simulator/reset_on_session_start_only_option.py +0 -0
  191. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/simulator/scale_factor_option.py +0 -0
  192. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/simulator/shutdown_other_simulators_option.py +0 -0
  193. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/simulator/simulator_devices_set_path_option.py +0 -0
  194. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/simulator/simulator_pasteboard_automatic_sync_option.py +0 -0
  195. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/simulator/simulator_startup_timeout_option.py +0 -0
  196. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/simulator/simulator_trace_pointer_option.py +0 -0
  197. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/simulator/simulator_window_center_option.py +0 -0
  198. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/wda/__init__.py +0 -0
  199. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/wda/allow_provisioning_device_regitration_option.py +0 -0
  200. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/wda/auto_accept_alerts_option.py +0 -0
  201. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/wda/auto_disimiss_alerts_option.py +0 -0
  202. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/wda/derived_data_path_option.py +0 -0
  203. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/wda/disable_automatic_screenshots_option.py +0 -0
  204. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/wda/force_app_launch_option.py +0 -0
  205. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/wda/keychain_password_option.py +0 -0
  206. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/wda/keychain_path_option.py +0 -0
  207. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/wda/max_typing_frequency_option.py +0 -0
  208. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/wda/mjpeg_server_port_option.py +0 -0
  209. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/wda/process_arguments_option.py +0 -0
  210. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/wda/result_bundle_path_option.py +0 -0
  211. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/wda/screenshot_quality_option.py +0 -0
  212. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/wda/should_terminate_app_option.py +0 -0
  213. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/wda/should_use_singleton_test_manager_option.py +0 -0
  214. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/wda/show_xcode_log_option.py +0 -0
  215. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/wda/simple_is_visible_check_option.py +0 -0
  216. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/wda/updated_wda_bundle_id_option.py +0 -0
  217. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/wda/use_native_caching_strategy_option.py +0 -0
  218. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/wda/use_new_wda_option.py +0 -0
  219. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/wda/use_prebuilt_wda_option.py +0 -0
  220. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/wda/use_simple_build_test_option.py +0 -0
  221. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/wda/use_xctestrun_file_option.py +0 -0
  222. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/wda/wait_for_idle_timeout_option.py +0 -0
  223. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/wda/wait_for_quiescence_option.py +0 -0
  224. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/wda/wda_base_url_option.py +0 -0
  225. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/wda/wda_connection_timeout_option.py +0 -0
  226. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/wda/wda_eventloop_idle_delay_option.py +0 -0
  227. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/wda/wda_launch_timeout_option.py +0 -0
  228. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/wda/wda_local_port_option.py +0 -0
  229. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/wda/wda_startup_retries_option.py +0 -0
  230. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/wda/wda_startup_retry_interval_option.py +0 -0
  231. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/wda/web_driver_agent_url_option.py +0 -0
  232. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/wda/xcode_org_id_option.py +0 -0
  233. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/wda/xcode_signing_id_option.py +0 -0
  234. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/webview/__init__.py +0 -0
  235. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/webview/absolute_web_locations_option.py +0 -0
  236. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/webview/additional_webview_bundle_ids_option.py +0 -0
  237. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/webview/enable_async_execute_from_https_option.py +0 -0
  238. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/webview/full_context_list_option.py +0 -0
  239. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/webview/include_safari_in_webviews_option.py +0 -0
  240. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/webview/native_web_tap_option.py +0 -0
  241. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/webview/safari_garbage_collect_option.py +0 -0
  242. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/webview/safari_ignore_fraud_warning_option.py +0 -0
  243. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/webview/safari_ignore_web_hostnames_option.py +0 -0
  244. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/webview/safari_initial_url_option.py +0 -0
  245. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/webview/safari_log_all_communication_hex_dump_option.py +0 -0
  246. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/webview/safari_log_all_communication_option.py +0 -0
  247. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/webview/safari_open_links_in_background_option.py +0 -0
  248. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/webview/safari_socket_chunk_size_option.py +0 -0
  249. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/webview/safari_web_inspector_max_frame_length_option.py +0 -0
  250. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/webview/webkit_response_timeout_option.py +0 -0
  251. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/webview/webview_connect_retries_option.py +0 -0
  252. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/webview/webview_connect_timeout_option.py +0 -0
  253. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/mac/__init__.py +0 -0
  254. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/mac/mac2/__init__.py +0 -0
  255. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/mac/mac2/arguments_option.py +0 -0
  256. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/mac/mac2/base.py +0 -0
  257. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/mac/mac2/bootstrap_root_option.py +0 -0
  258. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/mac/mac2/environment_option.py +0 -0
  259. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/mac/mac2/server_startup_timeout_option.py +0 -0
  260. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/mac/mac2/show_server_logs_option.py +0 -0
  261. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/mac/mac2/skip_app_kill_option.py +0 -0
  262. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/mac/mac2/web_driver_agent_mac_url_option.py +0 -0
  263. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/windows/__init__.py +0 -0
  264. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/windows/windows/__init__.py +0 -0
  265. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/windows/windows/app_arguments_option.py +0 -0
  266. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/windows/windows/app_top_level_window_option.py +0 -0
  267. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/windows/windows/app_working_dir_option.py +0 -0
  268. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/windows/windows/base.py +0 -0
  269. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/windows/windows/create_session_timeout_option.py +0 -0
  270. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/windows/windows/expreimental_web_driver_option.py +0 -0
  271. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/windows/windows/wait_for_app_launch_option.py +0 -0
  272. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/protocols/__init__.py +0 -0
  273. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/protocols/webdriver/__init__.py +0 -0
  274. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/protocols/webdriver/can_execute_commands.py +0 -0
  275. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/protocols/webdriver/can_execute_scripts.py +0 -0
  276. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/protocols/webdriver/can_find_elements.py +0 -0
  277. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/protocols/webdriver/can_remember_extension_presence.py +0 -0
  278. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/py.typed +0 -0
  279. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/__init__.py +0 -0
  280. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/appium_connection.py +0 -0
  281. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/appium_service.py +0 -0
  282. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/applicationstate.py +0 -0
  283. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/clipboard_content_type.py +0 -0
  284. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/command_method.py +0 -0
  285. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/common/__init__.py +0 -0
  286. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/common/appiumby.py +0 -0
  287. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/connectiontype.py +0 -0
  288. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/errorhandler.py +0 -0
  289. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/extensions/__init__.py +0 -0
  290. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/extensions/android/__init__.py +0 -0
  291. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/extensions/android/activities.py +0 -0
  292. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/extensions/android/common.py +0 -0
  293. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/extensions/android/display.py +0 -0
  294. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/extensions/android/gsm.py +0 -0
  295. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/extensions/android/nativekey.py +0 -0
  296. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/extensions/android/network.py +0 -0
  297. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/extensions/android/performance.py +0 -0
  298. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/extensions/android/power.py +0 -0
  299. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/extensions/android/sms.py +0 -0
  300. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/extensions/android/system_bars.py +0 -0
  301. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/extensions/applications.py +0 -0
  302. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/extensions/clipboard.py +0 -0
  303. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/extensions/context.py +0 -0
  304. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/extensions/device_time.py +0 -0
  305. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/extensions/execute_driver.py +0 -0
  306. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/extensions/execute_mobile_command.py +0 -0
  307. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/extensions/hw_actions.py +0 -0
  308. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/extensions/images_comparison.py +0 -0
  309. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/extensions/keyboard.py +0 -0
  310. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/extensions/location.py +0 -0
  311. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/extensions/log_event.py +0 -0
  312. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/extensions/remote_fs.py +0 -0
  313. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/extensions/screen_record.py +0 -0
  314. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/extensions/session.py +0 -0
  315. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/extensions/settings.py +0 -0
  316. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/mobilecommand.py +0 -0
  317. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/switch_to.py +0 -0
  318. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/webelement.py +0 -0
  319. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/.DS_Store +0 -0
  320. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/Makefile +0 -0
  321. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/README.md +0 -0
  322. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/doctrees/appium.common.doctree +0 -0
  323. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/doctrees/appium.doctree +0 -0
  324. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/doctrees/appium.webdriver.common.doctree +0 -0
  325. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/doctrees/appium.webdriver.doctree +0 -0
  326. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/doctrees/appium.webdriver.extensions.android.doctree +0 -0
  327. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/doctrees/appium.webdriver.extensions.doctree +0 -0
  328. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/doctrees/appium.webdriver.extensions.search_context.doctree +0 -0
  329. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/doctrees/environment.pickle +0 -0
  330. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/doctrees/index.doctree +0 -0
  331. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/.buildinfo +0 -0
  332. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/.nojekyll +0 -0
  333. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/_sources/appium.common.rst.txt +0 -0
  334. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/_sources/appium.rst.txt +0 -0
  335. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/_sources/appium.webdriver.common.rst.txt +0 -0
  336. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/_sources/appium.webdriver.extensions.android.rst.txt +0 -0
  337. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/_sources/appium.webdriver.extensions.rst.txt +0 -0
  338. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/_sources/appium.webdriver.extensions.search_context.rst.txt +0 -0
  339. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/_sources/appium.webdriver.rst.txt +0 -0
  340. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/_sources/index.rst.txt +0 -0
  341. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/_static/basic.css +0 -0
  342. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/_static/css/badge_only.css +0 -0
  343. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/_static/css/fonts/Roboto-Slab-Bold.woff +0 -0
  344. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/_static/css/fonts/Roboto-Slab-Bold.woff2 +0 -0
  345. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/_static/css/fonts/Roboto-Slab-Regular.woff +0 -0
  346. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/_static/css/fonts/Roboto-Slab-Regular.woff2 +0 -0
  347. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/_static/css/fonts/fontawesome-webfont.eot +0 -0
  348. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/_static/css/fonts/fontawesome-webfont.svg +0 -0
  349. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/_static/css/fonts/fontawesome-webfont.ttf +0 -0
  350. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/_static/css/fonts/fontawesome-webfont.woff +0 -0
  351. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/_static/css/fonts/fontawesome-webfont.woff2 +0 -0
  352. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/_static/css/fonts/lato-bold-italic.woff +0 -0
  353. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/_static/css/fonts/lato-bold-italic.woff2 +0 -0
  354. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/_static/css/fonts/lato-bold.woff +0 -0
  355. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/_static/css/fonts/lato-bold.woff2 +0 -0
  356. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/_static/css/fonts/lato-normal-italic.woff +0 -0
  357. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/_static/css/fonts/lato-normal-italic.woff2 +0 -0
  358. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/_static/css/fonts/lato-normal.woff +0 -0
  359. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/_static/css/fonts/lato-normal.woff2 +0 -0
  360. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/_static/css/theme.css +0 -0
  361. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/_static/doctools.js +0 -0
  362. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/_static/documentation_options.js +0 -0
  363. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/_static/file.png +0 -0
  364. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/_static/jquery-3.5.1.js +0 -0
  365. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/_static/jquery.js +0 -0
  366. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/_static/js/badge_only.js +0 -0
  367. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/_static/js/html5shiv-printshiv.min.js +0 -0
  368. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/_static/js/html5shiv.min.js +0 -0
  369. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/_static/js/theme.js +0 -0
  370. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/_static/language_data.js +0 -0
  371. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/_static/minus.png +0 -0
  372. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/_static/plus.png +0 -0
  373. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/_static/pygments.css +0 -0
  374. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/_static/searchtools.js +0 -0
  375. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/_static/underscore-1.13.1.js +0 -0
  376. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/_static/underscore.js +0 -0
  377. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/appium.common.html +0 -0
  378. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/appium.html +0 -0
  379. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/appium.webdriver.common.html +0 -0
  380. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/appium.webdriver.extensions.android.html +0 -0
  381. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/appium.webdriver.extensions.html +0 -0
  382. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/appium.webdriver.extensions.search_context.html +0 -0
  383. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/appium.webdriver.html +0 -0
  384. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/genindex.html +0 -0
  385. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/index.html +0 -0
  386. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/objects.inv +0 -0
  387. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/py-modindex.html +0 -0
  388. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/search.html +0 -0
  389. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/searchindex.js +0 -0
  390. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/conf.py +0 -0
  391. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/generate.sh +0 -0
  392. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/index.rst +0 -0
  393. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/make.bat +0 -0
  394. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/requirements.txt +0 -0
  395. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/webdriver.common.rst +0 -0
  396. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/webdriver.extensions.android.rst +0 -0
  397. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/webdriver.extensions.rst +0 -0
  398. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/webdriver.extensions.search_context.rst +0 -0
  399. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/webdriver.rst +0 -0
  400. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/setup.cfg +0 -0
  401. {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/setup.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: Appium-Python-Client
3
- Version: 3.1.0
3
+ Version: 3.2.0
4
4
  Summary: Python client for Appium
5
5
  Home-page: http://appium.io/
6
6
  Author: Isaac Murchie
@@ -8,7 +8,6 @@ Author-email: isaac@saucelabs.com
8
8
  Maintainer: Kazuaki Matsuo, Mykola Mokhnach, Mori Atsushi
9
9
  License: Apache 2.0
10
10
  Keywords: appium,selenium,selenium 4,python client,mobile automation
11
- Platform: UNKNOWN
12
11
  Classifier: Development Status :: 5 - Production/Stable
13
12
  Classifier: Programming Language :: Python
14
13
  Classifier: Programming Language :: Python :: 3.8
@@ -89,6 +88,10 @@ For example, some changes in the Selenium binding could break the Appium client.
89
88
 
90
89
 
91
90
  ### Quick migration guide from v2 to v3
91
+ - `options` keyword argument in the `webdriver.Remote` constructor such as `XCUITestOptions` instead of `desired_capabilities`
92
+ - Available options are https://github.com/appium/python-client/tree/master/appium/options
93
+ - Please check the [Usage](#usage) below as an exampple.
94
+ - Not a "new" change, but the `desired_capabilities` argument has been removed since v3.
92
95
  - Replacement
93
96
  - `start_activity` method: Please use [`mobile: startActivity`](https://github.com/appium/appium-uiautomator2-driver?tab=readme-ov-file#mobile-startactivity)
94
97
  - `launch_app`, `close_app` and `reset` methods: Please refer to https://github.com/appium/appium/issues/15807
@@ -96,8 +99,8 @@ For example, some changes in the Selenium binding could break the Appium client.
96
99
  - `set_value` and `set_text` methods: Please use `element.send_keys` or `send_keys` by W3C Actions
97
100
  - Removal
98
101
  - `end_test_coverage` method is no longer available
99
- - `session` properly is no longer available
100
- - `all_sessions` properly is no longer available
102
+ - `session` property is no longer available
103
+ - `all_sessions` property is no longer available
101
104
 
102
105
  ### Quick migration guide from v1 to v2
103
106
  - Enhancement
@@ -107,10 +110,10 @@ For example, some changes in the Selenium binding could break the Appium client.
107
110
  - Please check each behavior. Their behaviors could slightly differ.
108
111
  - Added `strict_ssl` to relax SSL errors such as self-signed ones
109
112
  - Deprecated
110
- - `MultiAction` and `TouchAction` are deprecated. Please use W3C WebDriver actions.
113
+ - `MultiAction` and `TouchAction` are deprecated. Please use W3C WebDriver actions or `mobile:` extensions
111
114
  - e.g.
112
115
  - [appium/webdriver/extensions/action_helpers.py](appium/webdriver/extensions/action_helpers.py)
113
- - https://www.selenium.dev/documentation/support_packages/mouse_and_keyboard_actions_in_detail/
116
+ - https://www.selenium.dev/documentation/webdriver/actions_api/
114
117
  - https://www.youtube.com/watch?v=oAJ7jwMNFVU
115
118
  - https://appiumpro.com/editions/30-ios-specific-touch-action-methods
116
119
  - https://appiumpro.com/editions/29-automating-complex-gestures-with-the-w3c-actions-api
@@ -122,8 +125,10 @@ On UIA2, some elements can be handled with `touch` pointer action instead of the
122
125
  For example, the below action builder is to replace the default one with the `touch` pointer action.
123
126
 
124
127
  ```python
128
+ from selenium.webdriver import ActionChains
125
129
  from selenium.webdriver.common.actions import interaction
126
130
  from selenium.webdriver.common.actions.action_builder import ActionBuilder
131
+ from selenium.webdriver.common.actions.pointer_input import PointerInput
127
132
 
128
133
  actions = ActionChains(driver)
129
134
  # override as 'touch' pointer action
@@ -136,6 +141,9 @@ actions.w3c_actions.pointer_action.release()
136
141
  actions.perform()
137
142
  ```
138
143
 
144
+ - [appium/webdriver/extensions/action_helpers.py](appium/webdriver/extensions/action_helpers.py)
145
+ - https://www.selenium.dev/documentation/webdriver/actions_api/
146
+
139
147
  ## Usage
140
148
 
141
149
  The Appium Python Client is fully compliant with the WebDriver Protocol
@@ -177,7 +185,7 @@ APPIUM_HOST = '127.0.0.1'
177
185
  def appium_service():
178
186
  service = AppiumService()
179
187
  service.start(
180
- # Check the output of `appium server --help` for the complete list of
188
+ # Check the output of `appium server --help` for the complete list of
181
189
  # server command line arguments
182
190
  args=['--address', APPIUM_HOST, '-p', str(APPIUM_PORT)],
183
191
  timeout_ms=20000,
@@ -186,7 +194,7 @@ def appium_service():
186
194
  service.stop()
187
195
 
188
196
 
189
- def create_ios_driver(custom_opts = None):
197
+ def create_ios_driver(custom_opts = None):
190
198
  options = XCUITestOptions()
191
199
  options.platformVersion = '13.4'
192
200
  options.udid = '123456789ABC'
@@ -194,9 +202,9 @@ def create_ios_driver(custom_opts = None):
194
202
  options.load_capabilities(custom_opts)
195
203
  # Appium1 points to http://127.0.0.1:4723/wd/hub by default
196
204
  return webdriver.Remote(f'http://{APPIUM_HOST}:{APPIUM_PORT}', options=options)
197
-
198
205
 
199
- def create_android_driver(custom_opts = None):
206
+
207
+ def create_android_driver(custom_opts = None):
200
208
  options = UiAutomator2Options()
201
209
  options.platformVersion = '10'
202
210
  options.udid = '123456789ABC'
@@ -209,16 +217,16 @@ def create_android_driver(custom_opts = None):
209
217
  @pytest.fixture
210
218
  def ios_driver_factory():
211
219
  return create_ios_driver
212
-
220
+
213
221
 
214
222
  @pytest.fixture
215
223
  def ios_driver():
216
- # prefer this fixture if there is no need to customize driver options in tests
224
+ # prefer this fixture if there is no need to customize driver options in tests
217
225
  driver = create_ios_driver()
218
226
  yield driver
219
227
  driver.quit()
220
228
 
221
-
229
+
222
230
  @pytest.fixture
223
231
  def android_driver_factory():
224
232
  return create_android_driver
@@ -226,12 +234,12 @@ def android_driver_factory():
226
234
 
227
235
  @pytest.fixture
228
236
  def android_driver():
229
- # prefer this fixture if there is no need to customize driver options in tests
237
+ # prefer this fixture if there is no need to customize driver options in tests
230
238
  driver = create_android_driver()
231
239
  yield driver
232
240
  driver.quit()
233
241
 
234
-
242
+
235
243
  def test_ios_click(appium_service, ios_driver_factory):
236
244
  # Usage of the context manager ensures the driver session is closed properly
237
245
  # after the test completes. Otherwise, make sure to call `driver.quit()` on teardown.
@@ -438,5 +446,3 @@ $ ./release.sh # release
438
446
  ## License
439
447
 
440
448
  Apache License v2
441
-
442
-
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: Appium-Python-Client
3
- Version: 3.1.0
3
+ Version: 3.2.0
4
4
  Summary: Python client for Appium
5
5
  Home-page: http://appium.io/
6
6
  Author: Isaac Murchie
@@ -8,7 +8,6 @@ Author-email: isaac@saucelabs.com
8
8
  Maintainer: Kazuaki Matsuo, Mykola Mokhnach, Mori Atsushi
9
9
  License: Apache 2.0
10
10
  Keywords: appium,selenium,selenium 4,python client,mobile automation
11
- Platform: UNKNOWN
12
11
  Classifier: Development Status :: 5 - Production/Stable
13
12
  Classifier: Programming Language :: Python
14
13
  Classifier: Programming Language :: Python :: 3.8
@@ -89,6 +88,10 @@ For example, some changes in the Selenium binding could break the Appium client.
89
88
 
90
89
 
91
90
  ### Quick migration guide from v2 to v3
91
+ - `options` keyword argument in the `webdriver.Remote` constructor such as `XCUITestOptions` instead of `desired_capabilities`
92
+ - Available options are https://github.com/appium/python-client/tree/master/appium/options
93
+ - Please check the [Usage](#usage) below as an exampple.
94
+ - Not a "new" change, but the `desired_capabilities` argument has been removed since v3.
92
95
  - Replacement
93
96
  - `start_activity` method: Please use [`mobile: startActivity`](https://github.com/appium/appium-uiautomator2-driver?tab=readme-ov-file#mobile-startactivity)
94
97
  - `launch_app`, `close_app` and `reset` methods: Please refer to https://github.com/appium/appium/issues/15807
@@ -96,8 +99,8 @@ For example, some changes in the Selenium binding could break the Appium client.
96
99
  - `set_value` and `set_text` methods: Please use `element.send_keys` or `send_keys` by W3C Actions
97
100
  - Removal
98
101
  - `end_test_coverage` method is no longer available
99
- - `session` properly is no longer available
100
- - `all_sessions` properly is no longer available
102
+ - `session` property is no longer available
103
+ - `all_sessions` property is no longer available
101
104
 
102
105
  ### Quick migration guide from v1 to v2
103
106
  - Enhancement
@@ -107,10 +110,10 @@ For example, some changes in the Selenium binding could break the Appium client.
107
110
  - Please check each behavior. Their behaviors could slightly differ.
108
111
  - Added `strict_ssl` to relax SSL errors such as self-signed ones
109
112
  - Deprecated
110
- - `MultiAction` and `TouchAction` are deprecated. Please use W3C WebDriver actions.
113
+ - `MultiAction` and `TouchAction` are deprecated. Please use W3C WebDriver actions or `mobile:` extensions
111
114
  - e.g.
112
115
  - [appium/webdriver/extensions/action_helpers.py](appium/webdriver/extensions/action_helpers.py)
113
- - https://www.selenium.dev/documentation/support_packages/mouse_and_keyboard_actions_in_detail/
116
+ - https://www.selenium.dev/documentation/webdriver/actions_api/
114
117
  - https://www.youtube.com/watch?v=oAJ7jwMNFVU
115
118
  - https://appiumpro.com/editions/30-ios-specific-touch-action-methods
116
119
  - https://appiumpro.com/editions/29-automating-complex-gestures-with-the-w3c-actions-api
@@ -122,8 +125,10 @@ On UIA2, some elements can be handled with `touch` pointer action instead of the
122
125
  For example, the below action builder is to replace the default one with the `touch` pointer action.
123
126
 
124
127
  ```python
128
+ from selenium.webdriver import ActionChains
125
129
  from selenium.webdriver.common.actions import interaction
126
130
  from selenium.webdriver.common.actions.action_builder import ActionBuilder
131
+ from selenium.webdriver.common.actions.pointer_input import PointerInput
127
132
 
128
133
  actions = ActionChains(driver)
129
134
  # override as 'touch' pointer action
@@ -136,6 +141,9 @@ actions.w3c_actions.pointer_action.release()
136
141
  actions.perform()
137
142
  ```
138
143
 
144
+ - [appium/webdriver/extensions/action_helpers.py](appium/webdriver/extensions/action_helpers.py)
145
+ - https://www.selenium.dev/documentation/webdriver/actions_api/
146
+
139
147
  ## Usage
140
148
 
141
149
  The Appium Python Client is fully compliant with the WebDriver Protocol
@@ -177,7 +185,7 @@ APPIUM_HOST = '127.0.0.1'
177
185
  def appium_service():
178
186
  service = AppiumService()
179
187
  service.start(
180
- # Check the output of `appium server --help` for the complete list of
188
+ # Check the output of `appium server --help` for the complete list of
181
189
  # server command line arguments
182
190
  args=['--address', APPIUM_HOST, '-p', str(APPIUM_PORT)],
183
191
  timeout_ms=20000,
@@ -186,7 +194,7 @@ def appium_service():
186
194
  service.stop()
187
195
 
188
196
 
189
- def create_ios_driver(custom_opts = None):
197
+ def create_ios_driver(custom_opts = None):
190
198
  options = XCUITestOptions()
191
199
  options.platformVersion = '13.4'
192
200
  options.udid = '123456789ABC'
@@ -194,9 +202,9 @@ def create_ios_driver(custom_opts = None):
194
202
  options.load_capabilities(custom_opts)
195
203
  # Appium1 points to http://127.0.0.1:4723/wd/hub by default
196
204
  return webdriver.Remote(f'http://{APPIUM_HOST}:{APPIUM_PORT}', options=options)
197
-
198
205
 
199
- def create_android_driver(custom_opts = None):
206
+
207
+ def create_android_driver(custom_opts = None):
200
208
  options = UiAutomator2Options()
201
209
  options.platformVersion = '10'
202
210
  options.udid = '123456789ABC'
@@ -209,16 +217,16 @@ def create_android_driver(custom_opts = None):
209
217
  @pytest.fixture
210
218
  def ios_driver_factory():
211
219
  return create_ios_driver
212
-
220
+
213
221
 
214
222
  @pytest.fixture
215
223
  def ios_driver():
216
- # prefer this fixture if there is no need to customize driver options in tests
224
+ # prefer this fixture if there is no need to customize driver options in tests
217
225
  driver = create_ios_driver()
218
226
  yield driver
219
227
  driver.quit()
220
228
 
221
-
229
+
222
230
  @pytest.fixture
223
231
  def android_driver_factory():
224
232
  return create_android_driver
@@ -226,12 +234,12 @@ def android_driver_factory():
226
234
 
227
235
  @pytest.fixture
228
236
  def android_driver():
229
- # prefer this fixture if there is no need to customize driver options in tests
237
+ # prefer this fixture if there is no need to customize driver options in tests
230
238
  driver = create_android_driver()
231
239
  yield driver
232
240
  driver.quit()
233
241
 
234
-
242
+
235
243
  def test_ios_click(appium_service, ios_driver_factory):
236
244
  # Usage of the context manager ensures the driver session is closed properly
237
245
  # after the test completes. Otherwise, make sure to call `driver.quit()` on teardown.
@@ -438,5 +446,3 @@ $ ./release.sh # release
438
446
  ## License
439
447
 
440
448
  Apache License v2
441
-
442
-
@@ -60,6 +60,10 @@ For example, some changes in the Selenium binding could break the Appium client.
60
60
 
61
61
 
62
62
  ### Quick migration guide from v2 to v3
63
+ - `options` keyword argument in the `webdriver.Remote` constructor such as `XCUITestOptions` instead of `desired_capabilities`
64
+ - Available options are https://github.com/appium/python-client/tree/master/appium/options
65
+ - Please check the [Usage](#usage) below as an exampple.
66
+ - Not a "new" change, but the `desired_capabilities` argument has been removed since v3.
63
67
  - Replacement
64
68
  - `start_activity` method: Please use [`mobile: startActivity`](https://github.com/appium/appium-uiautomator2-driver?tab=readme-ov-file#mobile-startactivity)
65
69
  - `launch_app`, `close_app` and `reset` methods: Please refer to https://github.com/appium/appium/issues/15807
@@ -67,8 +71,8 @@ For example, some changes in the Selenium binding could break the Appium client.
67
71
  - `set_value` and `set_text` methods: Please use `element.send_keys` or `send_keys` by W3C Actions
68
72
  - Removal
69
73
  - `end_test_coverage` method is no longer available
70
- - `session` properly is no longer available
71
- - `all_sessions` properly is no longer available
74
+ - `session` property is no longer available
75
+ - `all_sessions` property is no longer available
72
76
 
73
77
  ### Quick migration guide from v1 to v2
74
78
  - Enhancement
@@ -78,10 +82,10 @@ For example, some changes in the Selenium binding could break the Appium client.
78
82
  - Please check each behavior. Their behaviors could slightly differ.
79
83
  - Added `strict_ssl` to relax SSL errors such as self-signed ones
80
84
  - Deprecated
81
- - `MultiAction` and `TouchAction` are deprecated. Please use W3C WebDriver actions.
85
+ - `MultiAction` and `TouchAction` are deprecated. Please use W3C WebDriver actions or `mobile:` extensions
82
86
  - e.g.
83
87
  - [appium/webdriver/extensions/action_helpers.py](appium/webdriver/extensions/action_helpers.py)
84
- - https://www.selenium.dev/documentation/support_packages/mouse_and_keyboard_actions_in_detail/
88
+ - https://www.selenium.dev/documentation/webdriver/actions_api/
85
89
  - https://www.youtube.com/watch?v=oAJ7jwMNFVU
86
90
  - https://appiumpro.com/editions/30-ios-specific-touch-action-methods
87
91
  - https://appiumpro.com/editions/29-automating-complex-gestures-with-the-w3c-actions-api
@@ -93,8 +97,10 @@ On UIA2, some elements can be handled with `touch` pointer action instead of the
93
97
  For example, the below action builder is to replace the default one with the `touch` pointer action.
94
98
 
95
99
  ```python
100
+ from selenium.webdriver import ActionChains
96
101
  from selenium.webdriver.common.actions import interaction
97
102
  from selenium.webdriver.common.actions.action_builder import ActionBuilder
103
+ from selenium.webdriver.common.actions.pointer_input import PointerInput
98
104
 
99
105
  actions = ActionChains(driver)
100
106
  # override as 'touch' pointer action
@@ -107,6 +113,9 @@ actions.w3c_actions.pointer_action.release()
107
113
  actions.perform()
108
114
  ```
109
115
 
116
+ - [appium/webdriver/extensions/action_helpers.py](appium/webdriver/extensions/action_helpers.py)
117
+ - https://www.selenium.dev/documentation/webdriver/actions_api/
118
+
110
119
  ## Usage
111
120
 
112
121
  The Appium Python Client is fully compliant with the WebDriver Protocol
@@ -148,7 +157,7 @@ APPIUM_HOST = '127.0.0.1'
148
157
  def appium_service():
149
158
  service = AppiumService()
150
159
  service.start(
151
- # Check the output of `appium server --help` for the complete list of
160
+ # Check the output of `appium server --help` for the complete list of
152
161
  # server command line arguments
153
162
  args=['--address', APPIUM_HOST, '-p', str(APPIUM_PORT)],
154
163
  timeout_ms=20000,
@@ -157,7 +166,7 @@ def appium_service():
157
166
  service.stop()
158
167
 
159
168
 
160
- def create_ios_driver(custom_opts = None):
169
+ def create_ios_driver(custom_opts = None):
161
170
  options = XCUITestOptions()
162
171
  options.platformVersion = '13.4'
163
172
  options.udid = '123456789ABC'
@@ -165,9 +174,9 @@ def create_ios_driver(custom_opts = None):
165
174
  options.load_capabilities(custom_opts)
166
175
  # Appium1 points to http://127.0.0.1:4723/wd/hub by default
167
176
  return webdriver.Remote(f'http://{APPIUM_HOST}:{APPIUM_PORT}', options=options)
168
-
169
177
 
170
- def create_android_driver(custom_opts = None):
178
+
179
+ def create_android_driver(custom_opts = None):
171
180
  options = UiAutomator2Options()
172
181
  options.platformVersion = '10'
173
182
  options.udid = '123456789ABC'
@@ -180,16 +189,16 @@ def create_android_driver(custom_opts = None):
180
189
  @pytest.fixture
181
190
  def ios_driver_factory():
182
191
  return create_ios_driver
183
-
192
+
184
193
 
185
194
  @pytest.fixture
186
195
  def ios_driver():
187
- # prefer this fixture if there is no need to customize driver options in tests
196
+ # prefer this fixture if there is no need to customize driver options in tests
188
197
  driver = create_ios_driver()
189
198
  yield driver
190
199
  driver.quit()
191
200
 
192
-
201
+
193
202
  @pytest.fixture
194
203
  def android_driver_factory():
195
204
  return create_android_driver
@@ -197,12 +206,12 @@ def android_driver_factory():
197
206
 
198
207
  @pytest.fixture
199
208
  def android_driver():
200
- # prefer this fixture if there is no need to customize driver options in tests
209
+ # prefer this fixture if there is no need to customize driver options in tests
201
210
  driver = create_android_driver()
202
211
  yield driver
203
212
  driver.quit()
204
213
 
205
-
214
+
206
215
  def test_ios_click(appium_service, ios_driver_factory):
207
216
  # Usage of the context manager ensures the driver session is closed properly
208
217
  # after the test completes. Otherwise, make sure to call `driver.quit()` on teardown.
@@ -0,0 +1 @@
1
+ version = '3.2.0'
@@ -33,7 +33,7 @@ if TYPE_CHECKING:
33
33
  class MultiAction:
34
34
  """
35
35
  deprecated:: 2.0.0
36
- Please use W3C actions instead: http://appium.io/docs/en/commands/interactions/actions/
36
+ Please use W3C actions instead: https://github.com/appium/python-client?tab=readme-ov-file#multiactiontouchaction-to-w3c-actions
37
37
  """
38
38
 
39
39
  def __init__(self, driver: 'WebDriver', element: Optional['WebElement'] = None) -> None:
@@ -45,7 +45,7 @@ class MultiAction:
45
45
  self._element = element
46
46
  self._touch_actions: List['TouchAction'] = []
47
47
 
48
- def add(self, *touch_actions: 'TouchAction') -> None:
48
+ def add(self, *touch_actions: 'TouchAction') -> 'MultiAction':
49
49
  """Add TouchAction objects to the MultiAction, to be performed later.
50
50
 
51
51
  Args:
@@ -67,6 +67,8 @@ class MultiAction:
67
67
 
68
68
  self._touch_actions.append(copy.copy(touch_action))
69
69
 
70
+ return self
71
+
70
72
  def perform(self) -> 'MultiAction':
71
73
  """Perform the actions stored in the object.
72
74
 
@@ -37,7 +37,7 @@ if TYPE_CHECKING:
37
37
  class TouchAction:
38
38
  """
39
39
  deprecated:: 2.0.0
40
- Please use W3C actions instead: http://appium.io/docs/en/commands/interactions/actions/
40
+ Please use W3C actions instead: https://github.com/appium/python-client?tab=readme-ov-file#multiactiontouchaction-to-w3c-actions
41
41
  """
42
42
 
43
43
  def __init__(self, driver: Optional['WebDriver'] = None):
@@ -61,12 +61,15 @@ class ActionHelpers:
61
61
  actions.perform()
62
62
  return cast('WebDriver', self)
63
63
 
64
- def drag_and_drop(self, origin_el: WebElement, destination_el: WebElement) -> 'WebDriver':
64
+ def drag_and_drop(
65
+ self, origin_el: WebElement, destination_el: WebElement, pause: Optional[float] = None
66
+ ) -> 'WebDriver':
65
67
  """Drag the origin element to the destination element
66
68
 
67
69
  Args:
68
70
  origin_el: the element to drag
69
71
  destination_el: the element to drag to
72
+ pause: how long the action pauses before moving after the tap and hold, in float seconds.
70
73
 
71
74
  Returns:
72
75
  Union['WebDriver', 'ActionHelpers']: Self instance
@@ -74,6 +77,8 @@ class ActionHelpers:
74
77
  actions = ActionChains(self)
75
78
  # 'mouse' pointer action
76
79
  actions.w3c_actions.pointer_action.click_and_hold(origin_el)
80
+ if pause is not None and pause > 0:
81
+ actions.w3c_actions.pointer_action.pause(pause)
77
82
  actions.w3c_actions.pointer_action.move_to(destination_el)
78
83
  actions.w3c_actions.pointer_action.release()
79
84
  actions.perform()
@@ -96,7 +101,7 @@ class ActionHelpers:
96
101
  """
97
102
  if len(positions) == 1:
98
103
  actions = ActionChains(self)
99
- actions.w3c_actions = ActionBuilder(self, mouse=PointerInput(interaction.POINTER_TOUCH, 'touc'))
104
+ actions.w3c_actions = ActionBuilder(self, mouse=PointerInput(interaction.POINTER_TOUCH, 'touch'))
100
105
  x = positions[0][0]
101
106
  y = positions[0][1]
102
107
  actions.w3c_actions.pointer_action.move_to_location(x, y)
@@ -295,8 +295,11 @@ class WebDriver(
295
295
  executor = f'{protocol}://{hostname}:{port}{path}'
296
296
 
297
297
  logger.debug('Updated request endpoint to %s', executor)
298
- # Override command executor
299
- self.command_executor = RemoteConnection(executor, keep_alive=keep_alive)
298
+ # Override command executor.
299
+ if isinstance(self.command_executor, AppiumConnection): # type: ignore
300
+ self.command_executor = AppiumConnection(executor, keep_alive=keep_alive)
301
+ else:
302
+ self.command_executor = RemoteConnection(executor, keep_alive=keep_alive)
300
303
  self._add_commands()
301
304
 
302
305
  # https://github.com/SeleniumHQ/selenium/blob/06fdf2966df6bca47c0ae45e8201cd30db9b9a49/py/selenium/webdriver/remote/webdriver.py#L277
@@ -1 +0,0 @@
1
- version = '3.1.0'