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.
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/Appium_Python_Client.egg-info/PKG-INFO +23 -17
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/PKG-INFO +23 -17
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/README.md +22 -13
- Appium-Python-Client-3.2.0/appium/version.py +1 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/common/multi_action.py +4 -2
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/common/touch_action.py +1 -1
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/extensions/action_helpers.py +7 -2
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/webdriver.py +5 -2
- Appium-Python-Client-3.1.0/appium/version.py +0 -1
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/Appium_Python_Client.egg-info/SOURCES.txt +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/Appium_Python_Client.egg-info/dependency_links.txt +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/Appium_Python_Client.egg-info/requires.txt +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/Appium_Python_Client.egg-info/top_level.txt +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/LICENSE +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/MANIFEST.in +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/__init__.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/common/__init__.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/common/exceptions.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/common/helper.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/common/logger.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/__init__.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/__init__.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/__init__.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/adb/__init__.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/adb/adb_exec_timeout_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/adb/adb_port_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/adb/allow_delay_adb_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/adb/build_tools_version_option.py +0 -0
- {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
- {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
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/adb/logcat_filter_specs_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/adb/logcat_format_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/adb/mock_location_app_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/adb/remote_adb_host_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/adb/skip_logcat_capture_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/adb/suppress_kill_server_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/app/__init__.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/app/allow_test_packages_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/app/android_install_timeout_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/app/app_activity_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/app/app_package_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/app/app_wait_activity_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/app/app_wait_duration_option.py +0 -0
- {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
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/app/app_wait_package_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/app/auto_grant_premissions_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/app/enforce_app_install_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/app/intent_action_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/app/intent_category_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/app/intent_flags_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/app/optional_intent_arguments_option.py +0 -0
- {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
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/app/uninstall_other_packages_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/avd/__init__.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/avd/avd_args_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/avd/avd_env_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/avd/avd_launch_timeout_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/avd/avd_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/avd/avd_ready_timeout_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/avd/gps_enabled_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/avd/network_speed_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/context/__init__.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/context/auto_webview_timeout_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/context/chrome_logging_prefs_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/context/chrome_options_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/context/chromedriver_args_option.py +0 -0
- {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
- {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
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/context/chromedriver_executable_dir_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/context/chromedriver_executable_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/context/chromedriver_port_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/context/chromedriver_ports_option.py +0 -0
- {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
- {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
- {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
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/context/native_web_screenshot_option.py +0 -0
- {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
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/context/show_chromedriver_log_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/context/webview_devtools_port_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/localization/__init__.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/localization/locale_script_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/locking/__init__.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/locking/skip_unlock_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/locking/unlock_key_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/locking/unlock_strategy_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/locking/unlock_success_timeout_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/locking/unlock_type_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/mjpeg/__init__.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/mjpeg/mjpeg_screenshot_url_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/other/__init__.py +0 -0
- {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
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/other/user_profile_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/signing/__init__.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/signing/key_alias_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/signing/key_password_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/signing/keystore_password_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/signing/keystore_path_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/signing/no_sign_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/signing/use_keystore_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/espresso/__init__.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/espresso/activity_options_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/espresso/app_locale_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/espresso/base.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/espresso/espresso_build_config_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/espresso/espresso_server_launch_timeout_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/espresso/force_espresso_rebuild_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/espresso/intent_options_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/espresso/show_gradle_log_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/uiautomator2/__init__.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/uiautomator2/base.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/uiautomator2/disable_window_animation_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/uiautomator2/mjpeg_server_port_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/uiautomator2/skip_device_initialization_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/uiautomator2/skip_server_installation_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/uiautomator2/uiautomator2_server_install_timeout_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/uiautomator2/uiautomator2_server_launch_timeout_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/uiautomator2/uiautomator2_server_read_timeout_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/common/__init__.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/common/app_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/common/auto_web_view_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/common/automation_name_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/common/base.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/common/browser_name_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/common/bundle_id_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/common/clear_system_files_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/common/device_name_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/common/enable_performance_logging_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/common/event_timings_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/common/full_reset_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/common/is_headless_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/common/language_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/common/locale_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/common/new_command_timeout_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/common/no_reset_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/common/orientation_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/common/other_apps_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/common/platform_version_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/common/postrun_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/common/prerun_option.py +0 -0
- {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
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/common/skip_log_capture_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/common/supports_capabilities.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/common/system_host_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/common/system_port_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/common/udid_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/gecko/__init__.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/gecko/android_storage_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/gecko/base.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/gecko/firefox_options_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/gecko/marionette_port_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/gecko/verbosity_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/__init__.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/safari/__init__.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/safari/automatic_inspection_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/safari/automatic_profiling_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/safari/base.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/safari/device_name_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/safari/device_type_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/safari/device_udid_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/safari/platform_build_version_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/safari/platform_version_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/safari/use_simulator_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/safari/webkit_webrtc_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/__init__.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/app/__init__.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/app/app_install_strategy_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/app/app_push_timeout_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/app/localizable_strings_dir_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/base.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/general/__init__.py +0 -0
- {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
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/general/reset_location_service_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/other/__init__.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/other/command_timeouts_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/other/launch_with_idb_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/other/show_ios_log_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/other/use_json_source_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/simulator/__init__.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/simulator/calendar_access_authorized_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/simulator/calendar_format_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/simulator/connect_hardware_keyboard_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/simulator/custom_ssl_cert_option.py +0 -0
- {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
- {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
- {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
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/simulator/keep_key_chains_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/simulator/keychains_exclude_patterns_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/simulator/permissions_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/simulator/reduce_motion_option.py +0 -0
- {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
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/simulator/scale_factor_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/simulator/shutdown_other_simulators_option.py +0 -0
- {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
- {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
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/simulator/simulator_startup_timeout_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/simulator/simulator_trace_pointer_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/simulator/simulator_window_center_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/wda/__init__.py +0 -0
- {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
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/wda/auto_accept_alerts_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/wda/auto_disimiss_alerts_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/wda/derived_data_path_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/wda/disable_automatic_screenshots_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/wda/force_app_launch_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/wda/keychain_password_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/wda/keychain_path_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/wda/max_typing_frequency_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/wda/mjpeg_server_port_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/wda/process_arguments_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/wda/result_bundle_path_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/wda/screenshot_quality_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/wda/should_terminate_app_option.py +0 -0
- {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
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/wda/show_xcode_log_option.py +0 -0
- {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
- {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
- {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
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/wda/use_new_wda_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/wda/use_prebuilt_wda_option.py +0 -0
- {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
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/wda/use_xctestrun_file_option.py +0 -0
- {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
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/wda/wait_for_quiescence_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/wda/wda_base_url_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/wda/wda_connection_timeout_option.py +0 -0
- {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
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/wda/wda_launch_timeout_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/wda/wda_local_port_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/wda/wda_startup_retries_option.py +0 -0
- {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
- {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
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/wda/xcode_org_id_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/wda/xcode_signing_id_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/webview/__init__.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/webview/absolute_web_locations_option.py +0 -0
- {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
- {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
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/webview/full_context_list_option.py +0 -0
- {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
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/webview/native_web_tap_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/webview/safari_garbage_collect_option.py +0 -0
- {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
- {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
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/webview/safari_initial_url_option.py +0 -0
- {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
- {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
- {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
- {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
- {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
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/webview/webkit_response_timeout_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/webview/webview_connect_retries_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/ios/xcuitest/webview/webview_connect_timeout_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/mac/__init__.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/mac/mac2/__init__.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/mac/mac2/arguments_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/mac/mac2/base.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/mac/mac2/bootstrap_root_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/mac/mac2/environment_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/mac/mac2/server_startup_timeout_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/mac/mac2/show_server_logs_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/mac/mac2/skip_app_kill_option.py +0 -0
- {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
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/windows/__init__.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/windows/windows/__init__.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/windows/windows/app_arguments_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/windows/windows/app_top_level_window_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/windows/windows/app_working_dir_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/windows/windows/base.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/windows/windows/create_session_timeout_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/windows/windows/expreimental_web_driver_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/windows/windows/wait_for_app_launch_option.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/protocols/__init__.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/protocols/webdriver/__init__.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/protocols/webdriver/can_execute_commands.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/protocols/webdriver/can_execute_scripts.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/protocols/webdriver/can_find_elements.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/protocols/webdriver/can_remember_extension_presence.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/py.typed +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/__init__.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/appium_connection.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/appium_service.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/applicationstate.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/clipboard_content_type.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/command_method.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/common/__init__.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/common/appiumby.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/connectiontype.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/errorhandler.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/extensions/__init__.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/extensions/android/__init__.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/extensions/android/activities.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/extensions/android/common.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/extensions/android/display.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/extensions/android/gsm.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/extensions/android/nativekey.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/extensions/android/network.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/extensions/android/performance.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/extensions/android/power.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/extensions/android/sms.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/extensions/android/system_bars.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/extensions/applications.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/extensions/clipboard.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/extensions/context.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/extensions/device_time.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/extensions/execute_driver.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/extensions/execute_mobile_command.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/extensions/hw_actions.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/extensions/images_comparison.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/extensions/keyboard.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/extensions/location.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/extensions/log_event.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/extensions/remote_fs.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/extensions/screen_record.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/extensions/session.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/extensions/settings.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/mobilecommand.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/switch_to.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/webelement.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/.DS_Store +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/Makefile +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/README.md +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/doctrees/appium.common.doctree +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/doctrees/appium.doctree +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/doctrees/appium.webdriver.common.doctree +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/doctrees/appium.webdriver.doctree +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/doctrees/appium.webdriver.extensions.android.doctree +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/doctrees/appium.webdriver.extensions.doctree +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/doctrees/appium.webdriver.extensions.search_context.doctree +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/doctrees/environment.pickle +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/doctrees/index.doctree +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/.buildinfo +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/.nojekyll +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/_sources/appium.common.rst.txt +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/_sources/appium.rst.txt +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/_sources/appium.webdriver.common.rst.txt +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/_sources/appium.webdriver.extensions.android.rst.txt +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/_sources/appium.webdriver.extensions.rst.txt +0 -0
- {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
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/_sources/appium.webdriver.rst.txt +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/_sources/index.rst.txt +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/_static/basic.css +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/_static/css/badge_only.css +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/_static/css/fonts/Roboto-Slab-Bold.woff +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/_static/css/fonts/Roboto-Slab-Bold.woff2 +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/_static/css/fonts/Roboto-Slab-Regular.woff +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/_static/css/fonts/Roboto-Slab-Regular.woff2 +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/_static/css/fonts/fontawesome-webfont.eot +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/_static/css/fonts/fontawesome-webfont.svg +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/_static/css/fonts/fontawesome-webfont.ttf +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/_static/css/fonts/fontawesome-webfont.woff +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/_static/css/fonts/fontawesome-webfont.woff2 +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/_static/css/fonts/lato-bold-italic.woff +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/_static/css/fonts/lato-bold-italic.woff2 +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/_static/css/fonts/lato-bold.woff +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/_static/css/fonts/lato-bold.woff2 +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/_static/css/fonts/lato-normal-italic.woff +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/_static/css/fonts/lato-normal-italic.woff2 +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/_static/css/fonts/lato-normal.woff +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/_static/css/fonts/lato-normal.woff2 +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/_static/css/theme.css +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/_static/doctools.js +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/_static/documentation_options.js +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/_static/file.png +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/_static/jquery-3.5.1.js +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/_static/jquery.js +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/_static/js/badge_only.js +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/_static/js/html5shiv-printshiv.min.js +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/_static/js/html5shiv.min.js +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/_static/js/theme.js +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/_static/language_data.js +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/_static/minus.png +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/_static/plus.png +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/_static/pygments.css +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/_static/searchtools.js +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/_static/underscore-1.13.1.js +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/_static/underscore.js +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/appium.common.html +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/appium.html +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/appium.webdriver.common.html +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/appium.webdriver.extensions.android.html +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/appium.webdriver.extensions.html +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/appium.webdriver.extensions.search_context.html +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/appium.webdriver.html +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/genindex.html +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/index.html +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/objects.inv +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/py-modindex.html +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/search.html +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/_build/html/searchindex.js +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/conf.py +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/generate.sh +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/index.rst +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/make.bat +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/requirements.txt +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/webdriver.common.rst +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/webdriver.extensions.android.rst +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/webdriver.extensions.rst +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/webdriver.extensions.search_context.rst +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/docs/webdriver.rst +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/setup.cfg +0 -0
- {Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/setup.py +0 -0
{Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/Appium_Python_Client.egg-info/PKG-INFO
RENAMED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: Appium-Python-Client
|
|
3
|
-
Version: 3.
|
|
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`
|
|
100
|
-
- `all_sessions`
|
|
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/
|
|
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
|
-
|
|
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.
|
|
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`
|
|
100
|
-
- `all_sessions`
|
|
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/
|
|
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
|
-
|
|
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`
|
|
71
|
-
- `all_sessions`
|
|
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/
|
|
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
|
-
|
|
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'
|
{Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/common/multi_action.py
RENAMED
|
@@ -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:
|
|
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') ->
|
|
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
|
|
{Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/webdriver/common/touch_action.py
RENAMED
|
@@ -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:
|
|
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(
|
|
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, '
|
|
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
|
|
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'
|
{Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/Appium_Python_Client.egg-info/SOURCES.txt
RENAMED
|
File without changes
|
|
File without changes
|
{Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/Appium_Python_Client.egg-info/requires.txt
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/__init__.py
RENAMED
|
File without changes
|
{Appium-Python-Client-3.1.0 → Appium-Python-Client-3.2.0}/appium/options/android/common/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|