Skip to content

Commit d4c44b4

Browse files
feat: Add base options for all supported automation names (#721)
1 parent 0ff83df commit d4c44b4

File tree

12 files changed

+130
-3
lines changed

12 files changed

+130
-3
lines changed

appium/options/android/__init__.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1 +1,2 @@
1+
from .espresso.base import EspressoOptions
12
from .uiautomator2.base import UiAutomator2Options

appium/options/android/espresso/__init__.py

Whitespace-only changes.
Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
# Licensed to the Software Freedom Conservancy (SFC) under one
2+
# or more contributor license agreements. See the NOTICE file
3+
# distributed with this work for additional information
4+
# regarding copyright ownership. The SFC licenses this file
5+
# to you under the Apache License, Version 2.0 (the
6+
# "License"); you may not use this file except in compliance
7+
# with the License. You may obtain a copy of the License at
8+
#
9+
# http://www.apache.org/licenses/LICENSE-2.0
10+
#
11+
# Unless required by applicable law or agreed to in writing,
12+
# software distributed under the License is distributed on an
13+
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14+
# KIND, either express or implied. See the License for the
15+
# specific language governing permissions and limitations
16+
# under the License.
17+
18+
from typing import Dict
19+
20+
from appium.options.common.base import AppiumOptions
21+
22+
23+
class EspressoOptions(
24+
AppiumOptions,
25+
):
26+
@property
27+
def default_capabilities(self) -> Dict:
28+
return {
29+
AppiumOptions.AUTOMATION_NAME: 'Espresso',
30+
AppiumOptions.PLATFORM_NAME: 'Android',
31+
}

appium/options/gecko/__init__.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
from .base import GeckoOptions

appium/options/gecko/base.py

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
# Licensed to the Software Freedom Conservancy (SFC) under one
2+
# or more contributor license agreements. See the NOTICE file
3+
# distributed with this work for additional information
4+
# regarding copyright ownership. The SFC licenses this file
5+
# to you under the Apache License, Version 2.0 (the
6+
# "License"); you may not use this file except in compliance
7+
# with the License. You may obtain a copy of the License at
8+
#
9+
# http://www.apache.org/licenses/LICENSE-2.0
10+
#
11+
# Unless required by applicable law or agreed to in writing,
12+
# software distributed under the License is distributed on an
13+
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14+
# KIND, either express or implied. See the License for the
15+
# specific language governing permissions and limitations
16+
# under the License.
17+
18+
from typing import Dict
19+
20+
from appium.options.common.base import AppiumOptions
21+
22+
23+
class GeckoOptions(
24+
AppiumOptions,
25+
):
26+
@property
27+
def default_capabilities(self) -> Dict:
28+
return {
29+
AppiumOptions.AUTOMATION_NAME: 'Gecko',
30+
}

appium/options/ios/__init__.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1 +1,2 @@
1+
from .safari.base import SafariOptions
12
from .xcuitest.base import XCUITestOptions

appium/options/ios/safari/__init__.py

Whitespace-only changes.

appium/options/ios/safari/base.py

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
# Licensed to the Software Freedom Conservancy (SFC) under one
2+
# or more contributor license agreements. See the NOTICE file
3+
# distributed with this work for additional information
4+
# regarding copyright ownership. The SFC licenses this file
5+
# to you under the Apache License, Version 2.0 (the
6+
# "License"); you may not use this file except in compliance
7+
# with the License. You may obtain a copy of the License at
8+
#
9+
# http://www.apache.org/licenses/LICENSE-2.0
10+
#
11+
# Unless required by applicable law or agreed to in writing,
12+
# software distributed under the License is distributed on an
13+
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14+
# KIND, either express or implied. See the License for the
15+
# specific language governing permissions and limitations
16+
# under the License.
17+
18+
from typing import Dict
19+
20+
from appium.options.common.base import AppiumOptions
21+
22+
23+
class SafariOptions(
24+
AppiumOptions,
25+
):
26+
@property
27+
def default_capabilities(self) -> Dict:
28+
return {
29+
AppiumOptions.PLATFORM_NAME: 'iOS',
30+
AppiumOptions.AUTOMATION_NAME: 'Safari',
31+
}

appium/options/windows/__init__.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
from .windows.base import WindowsOptions

appium/options/windows/windows/__init__.py

Whitespace-only changes.

0 commit comments

Comments
 (0)