diff --git a/appium/options/mac/mac2/app_path_option.py b/appium/options/mac/mac2/app_path_option.py new file mode 100644 index 00000000..71506fd4 --- /dev/null +++ b/appium/options/mac/mac2/app_path_option.py @@ -0,0 +1,39 @@ +# Licensed to the Software Freedom Conservancy (SFC) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The SFC licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. + +from os import PathLike, fspath +from typing import Optional, Union + +from appium.options.common.supports_capabilities import SupportsCapabilities + +APP_PATH = 'appPath' + + +class AppPathOption(SupportsCapabilities): + @property + def app_path(self) -> Optional[str]: + """ + The path of the application to automate. + """ + return self.get_capability(APP_PATH) + + @app_path.setter + def app_path(self, value: Union[str, PathLike]) -> None: + """ + Set the path of the application to automate. + """ + self.set_capability(APP_PATH, fspath(value)) diff --git a/appium/options/mac/mac2/base.py b/appium/options/mac/mac2/base.py index d322ca87..d635f2b3 100644 --- a/appium/options/mac/mac2/base.py +++ b/appium/options/mac/mac2/base.py @@ -25,6 +25,7 @@ from appium.options.common.system_host_option import SystemHostOption from appium.options.common.system_port_option import SystemPortOption +from .app_path_option import AppPathOption from .arguments_option import ArgumentsOption from .bootstrap_root_option import BootstrapRootOption from .environment_option import EnvironmentOption @@ -36,6 +37,7 @@ class Mac2Options( AppiumOptions, + AppPathOption, PrerunOption, PostrunOption, ArgumentsOption,