@devicelab/maestro-runner-darwin-arm64 1.1.29 → 1.1.30
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.
- package/README.md +15 -4
- package/bin/maestro-runner +0 -0
- package/drivers/android/devicelab-android-driver-test.apk +0 -0
- package/drivers/android/devicelab-android-driver.apk +0 -0
- package/drivers/ios/DevicelabIOSRunner/DevicelabIOSRunnerUITests/ATTRIBUTION.md +16 -0
- package/drivers/ios/DevicelabIOSRunner/DevicelabIOSRunnerUITests/RunnerTests+Lifecycle.swift +33 -0
- package/drivers/ios/DevicelabIOSRunner/DevicelabIOSRunnerUITests/RunnerTests+Snapshot.swift +195 -88
- package/drivers/ios/DevicelabIOSRunner/DevicelabIOSRunnerUITests/RunnerTests.swift +3 -0
- package/drivers/ios/WebDriverAgent/CHANGELOG.md +202 -0
- package/drivers/ios/WebDriverAgent/README.md +18 -9
- package/drivers/ios/WebDriverAgent/Scripts/ci/build-real.sh +6 -10
- package/drivers/ios/WebDriverAgent/Scripts/fetch-prebuilt-wda.mjs +3 -2
- package/drivers/ios/WebDriverAgent/WebDriverAgent.xcodeproj/project.pbxproj +119 -0
- package/drivers/ios/WebDriverAgent/WebDriverAgentLib/Categories/XCAXClient_iOS+FBSnapshotReqParams.m +8 -0
- package/drivers/ios/WebDriverAgent/WebDriverAgentLib/Categories/XCUIApplication+FBHelpers.h +3 -0
- package/drivers/ios/WebDriverAgent/WebDriverAgentLib/Categories/XCUIApplication+FBHelpers.m +30 -1
- package/drivers/ios/WebDriverAgent/WebDriverAgentLib/Categories/XCUIApplication+FBTouchAction.h +53 -0
- package/drivers/ios/WebDriverAgent/WebDriverAgentLib/Categories/XCUIApplication+FBTouchAction.m +124 -0
- package/drivers/ios/WebDriverAgent/WebDriverAgentLib/Categories/XCUIDevice+FBHelpers.h +6 -0
- package/drivers/ios/WebDriverAgent/WebDriverAgentLib/Categories/XCUIDevice+FBHelpers.m +100 -23
- package/drivers/ios/WebDriverAgent/WebDriverAgentLib/Categories/XCUIDevice+FBHinge.h +41 -0
- package/drivers/ios/WebDriverAgent/WebDriverAgentLib/Categories/XCUIDevice+FBHinge.m +215 -0
- package/drivers/ios/WebDriverAgent/WebDriverAgentLib/Categories/XCUIDevice+FBRotation.m +8 -3
- package/drivers/ios/WebDriverAgent/WebDriverAgentLib/Categories/XCUIElement+FBFind.m +20 -7
- package/drivers/ios/WebDriverAgent/WebDriverAgentLib/Categories/XCUIElement+FBScrolling.m +110 -50
- package/drivers/ios/WebDriverAgent/WebDriverAgentLib/Categories/XCUIElement+FBTyping.h +7 -0
- package/drivers/ios/WebDriverAgent/WebDriverAgentLib/Categories/XCUIElement+FBTyping.m +20 -0
- package/drivers/ios/WebDriverAgent/WebDriverAgentLib/Categories/XCUIElement+FBUtilities.m +14 -11
- package/drivers/ios/WebDriverAgent/WebDriverAgentLib/Commands/FBCustomCommands.m +86 -10
- package/drivers/ios/WebDriverAgent/WebDriverAgentLib/Commands/FBElementCommands.m +57 -7
- package/drivers/ios/WebDriverAgent/WebDriverAgentLib/Commands/FBSessionCommands.m +3 -2
- package/drivers/ios/WebDriverAgent/WebDriverAgentLib/Info.plist +2 -2
- package/drivers/ios/WebDriverAgent/WebDriverAgentLib/Routing/FBHTTPServer.m +39 -16
- package/drivers/ios/WebDriverAgent/WebDriverAgentLib/Routing/FBScreenRecordingRequest.m +7 -2
- package/drivers/ios/WebDriverAgent/WebDriverAgentLib/Routing/FBSession.h +22 -0
- package/drivers/ios/WebDriverAgent/WebDriverAgentLib/Routing/FBSession.m +78 -12
- package/drivers/ios/WebDriverAgent/WebDriverAgentLib/Routing/FBTCPSocket.h +5 -1
- package/drivers/ios/WebDriverAgent/WebDriverAgentLib/Routing/FBTCPSocket.m +10 -1
- package/drivers/ios/WebDriverAgent/WebDriverAgentLib/Routing/FBWebServer.m +4 -1
- package/drivers/ios/WebDriverAgent/WebDriverAgentLib/Utilities/FBActiveAppDetectionPoint.h +2 -2
- package/drivers/ios/WebDriverAgent/WebDriverAgentLib/Utilities/FBActiveAppDetectionPoint.m +20 -0
- package/drivers/ios/WebDriverAgent/WebDriverAgentLib/Utilities/FBConfiguration.h +8 -0
- package/drivers/ios/WebDriverAgent/WebDriverAgentLib/Utilities/FBConfiguration.m +2 -0
- package/drivers/ios/WebDriverAgent/WebDriverAgentLib/Utilities/FBHIDOperations.h +41 -0
- package/drivers/ios/WebDriverAgent/WebDriverAgentLib/Utilities/FBHIDOperations.m +244 -0
- package/drivers/ios/WebDriverAgent/WebDriverAgentLib/Utilities/FBImageProcessor.m +3 -1
- package/drivers/ios/WebDriverAgent/WebDriverAgentLib/Utilities/FBMathUtils.h +11 -0
- package/drivers/ios/WebDriverAgent/WebDriverAgentLib/Utilities/FBMathUtils.m +38 -0
- package/drivers/ios/WebDriverAgent/WebDriverAgentLib/Utilities/FBMjpegServer.m +5 -3
- package/drivers/ios/WebDriverAgent/WebDriverAgentLib/Utilities/FBScreen.h +17 -0
- package/drivers/ios/WebDriverAgent/WebDriverAgentLib/Utilities/FBScreen.m +76 -1
- package/drivers/ios/WebDriverAgent/WebDriverAgentLib/Utilities/FBScreenshot.h +2 -2
- package/drivers/ios/WebDriverAgent/WebDriverAgentLib/Utilities/FBScreenshot.m +6 -2
- package/drivers/ios/WebDriverAgent/WebDriverAgentLib/Utilities/FBSettings.h +2 -0
- package/drivers/ios/WebDriverAgent/WebDriverAgentLib/Utilities/FBSettings.m +2 -0
- package/drivers/ios/WebDriverAgent/WebDriverAgentLib/Utilities/FBSettingsHandler.m +48 -0
- package/drivers/ios/WebDriverAgent/WebDriverAgentLib/Utilities/FBW3CActionsSynthesizer.m +121 -13
- package/drivers/ios/WebDriverAgent/WebDriverAgentLib/Utilities/FBXPath.m +181 -128
- package/drivers/ios/WebDriverAgent/WebDriverAgentLib/Utilities/LRUCache/LRUCache.m +8 -5
- package/drivers/ios/WebDriverAgent/WebDriverAgentLib/Utilities/LRUCache/LRUCacheNode.h +1 -1
- package/drivers/ios/WebDriverAgent/WebDriverAgentLib/WebDriverAgentLib.h +1 -0
- package/drivers/ios/WebDriverAgent/WebDriverAgentTests/IntegrationApp/COORDINATE_PROBE.md +3 -1
- package/drivers/ios/WebDriverAgent/WebDriverAgentTests/IntegrationApp/Classes/FBCoordinateProbeViewController.m +18 -0
- package/drivers/ios/WebDriverAgent/WebDriverAgentTests/IntegrationApp/Classes/SceneDelegate.m +33 -0
- package/drivers/ios/WebDriverAgent/WebDriverAgentTests/IntegrationApp/Classes/ViewController.m +26 -7
- package/drivers/ios/WebDriverAgent/WebDriverAgentTests/IntegrationTests/FBConfigurationTests.m +52 -0
- package/drivers/ios/WebDriverAgent/WebDriverAgentTests/IntegrationTests/FBDisplayGestureTests.m +541 -0
- package/drivers/ios/WebDriverAgent/WebDriverAgentTests/IntegrationTests/FBElementSwipingTests.m +95 -0
- package/drivers/ios/WebDriverAgent/WebDriverAgentTests/IntegrationTests/FBImageProcessorTests.m +34 -0
- package/drivers/ios/WebDriverAgent/WebDriverAgentTests/IntegrationTests/FBScreenTests.m +392 -0
- package/drivers/ios/WebDriverAgent/WebDriverAgentTests/IntegrationTests/FBSessionIntegrationTests.m +97 -0
- package/drivers/ios/WebDriverAgent/WebDriverAgentTests/IntegrationTests/FBTypingTest.m +33 -0
- package/drivers/ios/WebDriverAgent/WebDriverAgentTests/IntegrationTests/FBW3CTouchActionsIntegrationTests.m +126 -0
- package/drivers/ios/WebDriverAgent/WebDriverAgentTests/IntegrationTests/XCUIApplicationHelperTests.m +111 -0
- package/drivers/ios/WebDriverAgent/WebDriverAgentTests/IntegrationTests/XCUIDeviceHelperTests.m +97 -0
- package/drivers/ios/WebDriverAgent/WebDriverAgentTests/IntegrationTests/XCUIDeviceRotationTests.m +53 -0
- package/drivers/ios/WebDriverAgent/WebDriverAgentTests/IntegrationTests/XCUIElementFBFindTests.m +113 -0
- package/drivers/ios/WebDriverAgent/WebDriverAgentTests/IntegrationTests_tvOS/FBTVFocusIntegrationTests.m +21 -0
- package/drivers/ios/WebDriverAgent/WebDriverAgentTests/IntegrationTests_watchOS/WDAAppLifecycleIntegrationTests.swift +12 -0
- package/drivers/ios/WebDriverAgent/WebDriverAgentTests/UnitTests/FBCustomCommandsTests.m +61 -0
- package/drivers/ios/WebDriverAgent/WebDriverAgentTests/UnitTests/FBElementUtilitiesTests.m +40 -0
- package/drivers/ios/WebDriverAgent/WebDriverAgentTests/UnitTests/FBHTTPServerSessionTests.m +22 -4
- package/drivers/ios/WebDriverAgent/WebDriverAgentTests/UnitTests/FBHTTPServerTests.m +199 -5
- package/drivers/ios/WebDriverAgent/WebDriverAgentTests/UnitTests/FBLRUCacheTests.m +34 -0
- package/drivers/ios/WebDriverAgent/WebDriverAgentTests/UnitTests/FBMathUtilsTests.m +45 -0
- package/drivers/ios/WebDriverAgent/WebDriverAgentTests/UnitTests/FBSessionTests.m +201 -0
- package/drivers/ios/WebDriverAgent/WebDriverAgentTests/UnitTests/FBXPathTests.m +101 -0
- package/drivers/ios/WebDriverAgent/docs/hinge-angle.md +54 -0
- package/drivers/ios/WebDriverAgent/docs/multiple-displays.md +168 -0
- package/drivers/ios/WebDriverAgent/lib/webdriveragent.ts +1 -2
- package/drivers/ios/WebDriverAgent/lib/xcodebuild.ts +58 -10
- package/drivers/ios/WebDriverAgent/package.json +8 -15
- package/drivers/ios/WebDriverAgent/test/functional/helpers/display-settings.ts +49 -0
- package/drivers/ios/WebDriverAgent/test/functional/helpers/simulator.ts +7 -7
- package/drivers/ios/WebDriverAgent/test/functional/webdriveragent-e2e.spec.ts +4 -0
- package/drivers/ios/WebDriverAgent/test/unit/xcodebuild.spec.ts +230 -0
- package/drivers/ios/WebDriverAgent/tsconfig.json +2 -1
- package/drivers/ios/devicelab-ios-agent/README.md +12 -0
- package/drivers/ios/devicelab-ios-agent/device/DevicelabIOSAgent.app/DevicelabIOSAgent +0 -0
- package/drivers/ios/devicelab-ios-agent/device/DevicelabIOSAgentUITests-Runner.app/PlugIns/DevicelabIOSAgentUITests.xctest/DevicelabIOSAgentUITests +0 -0
- package/drivers/ios/devicelab-ios-agent/device/manifest.json +3 -3
- package/drivers/ios/devicelab-ios-agent/simulator/DevicelabIOSAgent.app/DevicelabIOSAgent +0 -0
- package/drivers/ios/devicelab-ios-agent/simulator/DevicelabIOSAgentUITests-Runner.app/PlugIns/DevicelabIOSAgentUITests.xctest/DevicelabIOSAgentUITests +0 -0
- package/drivers/ios/devicelab-ios-agent/simulator/manifest.json +3 -3
- package/package.json +1 -1
- package/drivers/ios/WebDriverAgent/.editorconfig +0 -11
- package/drivers/ios/WebDriverAgent/.github/ISSUE_TEMPLATE.md +0 -4
- package/drivers/ios/WebDriverAgent/.github/actions/xcode-setup/action.yml +0 -32
- package/drivers/ios/WebDriverAgent/.github/dependabot.yml +0 -22
- package/drivers/ios/WebDriverAgent/.github/workflows/functional-test.yml +0 -103
- package/drivers/ios/WebDriverAgent/.github/workflows/pr-title.yml +0 -10
- package/drivers/ios/WebDriverAgent/.github/workflows/publish.js.yml +0 -112
- package/drivers/ios/WebDriverAgent/.github/workflows/unit-test.yml +0 -32
- package/drivers/ios/WebDriverAgent/.github/workflows/wda-package.yml +0 -114
- package/drivers/ios/WebDriverAgent/.github/workflows/wda-tests.yml +0 -246
- package/drivers/ios/WebDriverAgent/oxfmt.config.mjs +0 -6
- package/drivers/ios/WebDriverAgent/oxlint.config.mjs +0 -6
- package/drivers/ios/WebDriverAgent/release.config.mjs +0 -14
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
name: 'Setup Xcode Test Environment'
|
|
2
|
-
description: 'Common setup steps for Xcode tests'
|
|
3
|
-
|
|
4
|
-
inputs:
|
|
5
|
-
xcode_version:
|
|
6
|
-
description: 'Xcode version to use'
|
|
7
|
-
required: true
|
|
8
|
-
ruby_version:
|
|
9
|
-
description: 'Ruby version to use'
|
|
10
|
-
required: false
|
|
11
|
-
default: '3.3'
|
|
12
|
-
|
|
13
|
-
runs:
|
|
14
|
-
using: 'composite'
|
|
15
|
-
steps:
|
|
16
|
-
- uses: actions/setup-node@v6
|
|
17
|
-
with:
|
|
18
|
-
node-version: lts/*
|
|
19
|
-
- uses: maxim-lobanov/setup-xcode@v1
|
|
20
|
-
with:
|
|
21
|
-
xcode-version: ${{ inputs.xcode_version }}
|
|
22
|
-
- name: Setup Ruby
|
|
23
|
-
uses: ruby/setup-ruby@v1
|
|
24
|
-
with:
|
|
25
|
-
ruby-version: ${{ inputs.ruby_version }}
|
|
26
|
-
bundler-cache: true
|
|
27
|
-
- name: Install dependencies
|
|
28
|
-
run: |
|
|
29
|
-
bundle install
|
|
30
|
-
mkdir -p ./Resources/WebDriverAgent.bundle
|
|
31
|
-
shell: bash
|
|
32
|
-
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
version: 2
|
|
2
|
-
updates:
|
|
3
|
-
- package-ecosystem: npm
|
|
4
|
-
directory: "/"
|
|
5
|
-
schedule:
|
|
6
|
-
interval: daily
|
|
7
|
-
time: "11:00"
|
|
8
|
-
open-pull-requests-limit: 10
|
|
9
|
-
commit-message:
|
|
10
|
-
prefix: "chore"
|
|
11
|
-
include: "scope"
|
|
12
|
-
|
|
13
|
-
- package-ecosystem: github-actions
|
|
14
|
-
directory: "/"
|
|
15
|
-
schedule:
|
|
16
|
-
interval: weekly
|
|
17
|
-
time: "11:00"
|
|
18
|
-
day: "tuesday"
|
|
19
|
-
open-pull-requests-limit: 5
|
|
20
|
-
commit-message:
|
|
21
|
-
prefix: "ci"
|
|
22
|
-
include: "scope"
|
|
@@ -1,103 +0,0 @@
|
|
|
1
|
-
name: Functional Tests
|
|
2
|
-
|
|
3
|
-
on: [pull_request]
|
|
4
|
-
|
|
5
|
-
concurrency:
|
|
6
|
-
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
|
|
7
|
-
cancel-in-progress: true
|
|
8
|
-
|
|
9
|
-
jobs:
|
|
10
|
-
test:
|
|
11
|
-
strategy:
|
|
12
|
-
fail-fast: false
|
|
13
|
-
matrix:
|
|
14
|
-
test_targets:
|
|
15
|
-
# iOS
|
|
16
|
-
- HOST_OS: 'xcode-27'
|
|
17
|
-
XCODE_VERSION: '27.0-beta'
|
|
18
|
-
PLATFORM_NAME: 'iOS'
|
|
19
|
-
PLATFORM_VERSION: '27.0'
|
|
20
|
-
DEVICE_NAME: 'iPhone 17'
|
|
21
|
-
- HOST_OS: 'macos-15'
|
|
22
|
-
XCODE_VERSION: '16.4'
|
|
23
|
-
PLATFORM_NAME: 'iOS'
|
|
24
|
-
PLATFORM_VERSION: '18.5'
|
|
25
|
-
DEVICE_NAME: 'iPhone 16 Plus'
|
|
26
|
-
|
|
27
|
-
# tvOS
|
|
28
|
-
- HOST_OS: 'xcode-27'
|
|
29
|
-
XCODE_VERSION: '27.0-beta'
|
|
30
|
-
PLATFORM_NAME: 'tvOS'
|
|
31
|
-
PLATFORM_VERSION: '27.0'
|
|
32
|
-
DEVICE_NAME: 'Apple TV 4K (3rd generation)'
|
|
33
|
-
- HOST_OS: 'macos-15'
|
|
34
|
-
XCODE_VERSION: '16.4'
|
|
35
|
-
PLATFORM_NAME: 'tvOS'
|
|
36
|
-
PLATFORM_VERSION: '18.5'
|
|
37
|
-
DEVICE_NAME: 'Apple TV 4K (3rd generation)'
|
|
38
|
-
|
|
39
|
-
# WatchOS
|
|
40
|
-
- HOST_OS: 'xcode-27'
|
|
41
|
-
XCODE_VERSION: '27.0-beta'
|
|
42
|
-
PLATFORM_NAME: 'watchOS'
|
|
43
|
-
PLATFORM_VERSION: '27.0'
|
|
44
|
-
DEVICE_NAME: 'Apple Watch Series 11 (46mm)'
|
|
45
|
-
- HOST_OS: 'macos-15'
|
|
46
|
-
XCODE_VERSION: '16.4'
|
|
47
|
-
PLATFORM_NAME: 'watchOS'
|
|
48
|
-
PLATFORM_VERSION: '11.5'
|
|
49
|
-
DEVICE_NAME: 'Apple Watch Series 10 (46mm)'
|
|
50
|
-
|
|
51
|
-
# https://github.com/actions/runner-images/blob/main/images/macos/macos-15-Readme.md
|
|
52
|
-
runs-on: ${{matrix.test_targets.HOST_OS}}
|
|
53
|
-
steps:
|
|
54
|
-
- uses: actions/checkout@v7
|
|
55
|
-
- uses: actions/setup-node@v7
|
|
56
|
-
with:
|
|
57
|
-
node-version: lts/*
|
|
58
|
-
check-latest: true
|
|
59
|
-
- uses: maxim-lobanov/setup-xcode@v1
|
|
60
|
-
with:
|
|
61
|
-
xcode-version: ${{matrix.test_targets.XCODE_VERSION}}
|
|
62
|
-
- run: |
|
|
63
|
-
npm install
|
|
64
|
-
mkdir -p ./Resources/WebDriverAgent.bundle
|
|
65
|
-
name: Install dev dependencies
|
|
66
|
-
|
|
67
|
-
- run: xcrun simctl list devices available
|
|
68
|
-
name: List Installed Simulators
|
|
69
|
-
- run: xcrun simctl list runtimes
|
|
70
|
-
name: List Runtimes
|
|
71
|
-
- name: Start Simulator UI
|
|
72
|
-
# Xcode 27 replaced Simulator.app with DeviceHub.app, one directory level up from
|
|
73
|
-
# Simulator.app's location (Contents/Applications instead of Contents/Developer/Applications).
|
|
74
|
-
run: |
|
|
75
|
-
if [ "${PLATFORM_VERSION%%.*}" -ge 27 ]; then
|
|
76
|
-
open -Fn "$(xcode-select --print-path)/../Applications/DeviceHub.app"
|
|
77
|
-
else
|
|
78
|
-
open -Fn "$(xcode-select --print-path)/Applications/Simulator.app"
|
|
79
|
-
fi
|
|
80
|
-
env:
|
|
81
|
-
PLATFORM_VERSION: ${{matrix.test_targets.PLATFORM_VERSION}}
|
|
82
|
-
- name: Prepare simulator
|
|
83
|
-
id: prepareSimulator
|
|
84
|
-
uses: futureware-tech/simulator-action@v5
|
|
85
|
-
with:
|
|
86
|
-
model: '${{matrix.test_targets.DEVICE_NAME}}'
|
|
87
|
-
os: '${{matrix.test_targets.PLATFORM_NAME}}'
|
|
88
|
-
os_version: '${{matrix.test_targets.PLATFORM_VERSION}}'
|
|
89
|
-
shutdown_after_job: false
|
|
90
|
-
wait_for_boot: true
|
|
91
|
-
- name: Finalize simulator boot
|
|
92
|
-
run: node Scripts/ci/wait-for-simulator-idle.mjs "${{steps.prepareSimulator.outputs.udid}}"
|
|
93
|
-
|
|
94
|
-
- run: npm run e2e-test
|
|
95
|
-
name: Run functional tests
|
|
96
|
-
env:
|
|
97
|
-
CI: true
|
|
98
|
-
_FORCE_LOGS: 1
|
|
99
|
-
_LOG_TIMESTAMP: 1
|
|
100
|
-
DEVICE_NAME: ${{matrix.test_targets.DEVICE_NAME}}
|
|
101
|
-
PLATFORM_NAME: ${{matrix.test_targets.PLATFORM_NAME}}
|
|
102
|
-
PLATFORM_VERSION: ${{matrix.test_targets.PLATFORM_VERSION}}
|
|
103
|
-
SIMULATOR_UDID: ${{steps.prepareSimulator.outputs.udid}}
|
|
@@ -1,112 +0,0 @@
|
|
|
1
|
-
# This workflow will do a clean install of node dependencies, build the source code and run tests across different versions of node
|
|
2
|
-
# For more information see: https://help.github.com/actions/language-and-framework-guides/using-nodejs-with-github-actions
|
|
3
|
-
|
|
4
|
-
name: Release
|
|
5
|
-
|
|
6
|
-
on:
|
|
7
|
-
workflow_dispatch:
|
|
8
|
-
push:
|
|
9
|
-
branches: [ master ]
|
|
10
|
-
|
|
11
|
-
permissions:
|
|
12
|
-
contents: write
|
|
13
|
-
pull-requests: write
|
|
14
|
-
issues: write
|
|
15
|
-
id-token: write # to enable use of OIDC for trusted publishing and npm provenance
|
|
16
|
-
|
|
17
|
-
env:
|
|
18
|
-
# DO NOT USE 26.4+ for a while since it could drop lower iOS versions forcefully
|
|
19
|
-
# while the project config allows such lower versions.
|
|
20
|
-
# (at least WDA failed to start on iOS 15)
|
|
21
|
-
# Xcode 26.3 looks like it's working as expected.
|
|
22
|
-
XCODE_VERSION: '16.4'
|
|
23
|
-
# Available destination for simulators depends on Xcode version.
|
|
24
|
-
DESTINATION_SIM: platform=iOS Simulator,name=iPhone 17
|
|
25
|
-
DESTINATION_SIM_TVOS: platform=tvOS Simulator,name=Apple TV 4K (3rd generation)
|
|
26
|
-
DESTINATION_SIM_WATCHOS: platform=watchOS Simulator,name=Apple Watch Series 11 (46mm)
|
|
27
|
-
|
|
28
|
-
jobs:
|
|
29
|
-
build_matrix:
|
|
30
|
-
runs-on: ubuntu-latest
|
|
31
|
-
outputs:
|
|
32
|
-
matrix: ${{ steps.set-matrix.outputs.matrix }}
|
|
33
|
-
steps:
|
|
34
|
-
- id: set-matrix
|
|
35
|
-
run: |
|
|
36
|
-
cat <<MATRIX_JSON | jq -c . > matrix.json
|
|
37
|
-
[
|
|
38
|
-
{"name": "iOS Real Device", "build_script": "build-real.sh", "scheme": "WebDriverAgentRunner", "destination": "generic/platform=iOS", "derived_data_path": "appium_wda_ios", "wd": "appium_wda_ios/Build/Products/Debug-iphoneos", "zip_name": "WebDriverAgentRunner-Runner.zip", "artifact_name": "WebDriverAgentRunner-Runner"},
|
|
39
|
-
{"name": "tvOS Real Device", "build_script": "build-real.sh", "scheme": "WebDriverAgentRunner_tvOS", "destination": "generic/platform=tvOS", "derived_data_path": "appium_wda_tvos", "wd": "appium_wda_tvos/Build/Products/Debug-appletvos", "zip_name": "WebDriverAgentRunner_tvOS-Runner.zip", "artifact_name": "WebDriverAgentRunner_tvOS-Runner"},
|
|
40
|
-
{"name": "iOS Simulator arm64", "build_script": "build-sim.sh", "scheme": "WebDriverAgentRunner", "destination": "${{ env.DESTINATION_SIM }}", "derived_data_path": "appium_wda_ios_sim_arm64", "simulator_name": "Debug-iphonesimulator", "wd": "appium_wda_ios_sim_arm64/Build/Products/Debug-iphonesimulator", "zip_name": "WebDriverAgentRunner-Build-Sim-arm64.zip", "artifact_name": "WebDriverAgentRunner-Build-Sim-arm64", "archs": "arm64"},
|
|
41
|
-
{"name": "iOS Simulator x86_64", "build_script": "build-sim.sh", "scheme": "WebDriverAgentRunner", "destination": "${{ env.DESTINATION_SIM }}", "derived_data_path": "appium_wda_ios_sim_x86_64", "simulator_name": "Debug-iphonesimulator", "wd": "appium_wda_ios_sim_x86_64/Build/Products/Debug-iphonesimulator", "zip_name": "WebDriverAgentRunner-Build-Sim-x86_64.zip", "artifact_name": "WebDriverAgentRunner-Build-Sim-x86_64", "archs": "x86_64"},
|
|
42
|
-
{"name": "tvOS Simulator arm64", "build_script": "build-sim.sh", "scheme": "WebDriverAgentRunner_tvOS", "destination": "${{ env.DESTINATION_SIM_TVOS }}", "derived_data_path": "appium_wda_tvos_sim_arm64", "simulator_name": "Debug-appletvsimulator", "wd": "appium_wda_tvos_sim_arm64/Build/Products/Debug-appletvsimulator", "zip_name": "WebDriverAgentRunner_tvOS-Build-Sim-arm64.zip", "artifact_name": "WebDriverAgentRunner_tvOS-Build-Sim-arm64", "archs": "arm64"},
|
|
43
|
-
{"name": "tvOS Simulator x86_64", "build_script": "build-sim.sh", "scheme": "WebDriverAgentRunner_tvOS", "destination": "${{ env.DESTINATION_SIM_TVOS }}", "derived_data_path": "appium_wda_tvos_sim_x86_64", "simulator_name": "Debug-appletvsimulator", "wd": "appium_wda_tvos_sim_x86_64/Build/Products/Debug-appletvsimulator", "zip_name": "WebDriverAgentRunner_tvOS-Build-Sim-x86_64.zip", "artifact_name": "WebDriverAgentRunner_tvOS-Build-Sim-x86_64", "archs": "x86_64"},
|
|
44
|
-
{"name": "watchOS Simulator arm64", "build_script": "build-sim.sh", "scheme": "WebDriverAgentRunner_watchOS", "destination": "${{ env.DESTINATION_SIM_WATCHOS }}", "derived_data_path": "appium_wda_watchos_sim_arm64", "simulator_name": "Debug-watchsimulator", "wd": "appium_wda_watchos_sim_arm64/Build/Products/Debug-watchsimulator", "zip_name": "WebDriverAgentRunner_watchOS-Build-Sim-arm64.zip", "artifact_name": "WebDriverAgentRunner_watchOS-Build-Sim-arm64", "archs": "arm64"},
|
|
45
|
-
{"name": "watchOS Simulator x86_64", "build_script": "build-sim.sh", "scheme": "WebDriverAgentRunner_watchOS", "destination": "${{ env.DESTINATION_SIM_WATCHOS }}", "derived_data_path": "appium_wda_watchos_sim_x86_64", "simulator_name": "Debug-watchsimulator", "wd": "appium_wda_watchos_sim_x86_64/Build/Products/Debug-watchsimulator", "zip_name": "WebDriverAgentRunner_watchOS-Build-Sim-x86_64.zip", "artifact_name": "WebDriverAgentRunner_watchOS-Build-Sim-x86_64", "archs": "x86_64"}
|
|
46
|
-
]
|
|
47
|
-
MATRIX_JSON
|
|
48
|
-
echo "matrix=$(cat matrix.json)" >> $GITHUB_OUTPUT
|
|
49
|
-
|
|
50
|
-
build-wda:
|
|
51
|
-
needs: build_matrix
|
|
52
|
-
name: ${{ matrix.config.name }}
|
|
53
|
-
runs-on: macos-15
|
|
54
|
-
strategy:
|
|
55
|
-
fail-fast: false
|
|
56
|
-
matrix:
|
|
57
|
-
config: ${{ fromJSON(needs.build_matrix.outputs.matrix) }}
|
|
58
|
-
steps:
|
|
59
|
-
- uses: actions/checkout@v7
|
|
60
|
-
- uses: maxim-lobanov/setup-xcode@v1
|
|
61
|
-
with:
|
|
62
|
-
xcode-version: "${{ env.XCODE_VERSION }}"
|
|
63
|
-
- name: ${{ matrix.config.name }}
|
|
64
|
-
uses: nick-fields/retry@v4
|
|
65
|
-
with:
|
|
66
|
-
timeout_minutes: 10
|
|
67
|
-
max_attempts: 3
|
|
68
|
-
command: |
|
|
69
|
-
export DERIVED_DATA_PATH="${{ matrix.config.derived_data_path }}"
|
|
70
|
-
export SCHEME="${{ matrix.config.scheme }}"
|
|
71
|
-
export DESTINATION="${{ matrix.config.destination }}"
|
|
72
|
-
export WD="${{ matrix.config.wd }}"
|
|
73
|
-
export ZIP_PKG_NAME="${{ matrix.config.zip_name }}"
|
|
74
|
-
export ARCHS="${{ matrix.config.archs || '' }}"
|
|
75
|
-
sh $GITHUB_WORKSPACE/Scripts/ci/${{ matrix.config.build_script }}
|
|
76
|
-
- name: Upload artifact
|
|
77
|
-
uses: actions/upload-artifact@v7
|
|
78
|
-
with:
|
|
79
|
-
name: ${{ matrix.config.artifact_name }}
|
|
80
|
-
path: ${{ matrix.config.zip_name }}
|
|
81
|
-
|
|
82
|
-
release:
|
|
83
|
-
needs: build-wda
|
|
84
|
-
runs-on: macos-15
|
|
85
|
-
steps:
|
|
86
|
-
- uses: actions/checkout@v7
|
|
87
|
-
- name: Use Node.js
|
|
88
|
-
uses: actions/setup-node@v7
|
|
89
|
-
with:
|
|
90
|
-
node-version: lts/*
|
|
91
|
-
- uses: maxim-lobanov/setup-xcode@v1
|
|
92
|
-
with:
|
|
93
|
-
xcode-version: "${{ env.XCODE_VERSION }}"
|
|
94
|
-
- run: npm install --no-package-lock
|
|
95
|
-
name: Install dev dependencies
|
|
96
|
-
- run: npm run build
|
|
97
|
-
name: Run build
|
|
98
|
-
- run: npm run test
|
|
99
|
-
name: Run test
|
|
100
|
-
- name: Download all artifacts
|
|
101
|
-
uses: actions/download-artifact@v8
|
|
102
|
-
with:
|
|
103
|
-
path: ${{ runner.temp }}/artifacts-temp
|
|
104
|
-
- name: Move artifacts to root for release
|
|
105
|
-
run: |
|
|
106
|
-
find "${{ runner.temp }}/artifacts-temp" -name "*.zip" -type f -exec mv {} . \;
|
|
107
|
-
rm -rf "${{ runner.temp }}/artifacts-temp"
|
|
108
|
-
- run: npx semantic-release
|
|
109
|
-
env:
|
|
110
|
-
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
111
|
-
name: Release
|
|
112
|
-
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
name: Unit Tests
|
|
2
|
-
|
|
3
|
-
on: [pull_request, push]
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
jobs:
|
|
7
|
-
node_matrix:
|
|
8
|
-
uses: appium/appium-workflows/.github/workflows/node-lts-matrix.yml@main
|
|
9
|
-
|
|
10
|
-
node_test:
|
|
11
|
-
needs:
|
|
12
|
-
- node_matrix
|
|
13
|
-
strategy:
|
|
14
|
-
matrix:
|
|
15
|
-
node-version: ${{ fromJSON(needs.node_matrix.outputs.versions) }}
|
|
16
|
-
runs-on: ubuntu-latest
|
|
17
|
-
steps:
|
|
18
|
-
- uses: actions/checkout@v7
|
|
19
|
-
- uses: actions/setup-node@v7
|
|
20
|
-
with:
|
|
21
|
-
node-version: ${{ matrix.node-version }}
|
|
22
|
-
- uses: SocketDev/action@v1
|
|
23
|
-
with:
|
|
24
|
-
mode: firewall-free
|
|
25
|
-
- run: sfw npm install --no-package-lock
|
|
26
|
-
name: Install dev dependencies
|
|
27
|
-
- run: npm run lint
|
|
28
|
-
name: Run linter
|
|
29
|
-
- run: npm run format:check
|
|
30
|
-
name: Run format check
|
|
31
|
-
- run: npm run test
|
|
32
|
-
name: Run unit tests
|
|
@@ -1,114 +0,0 @@
|
|
|
1
|
-
name: Building WebDriverAgent
|
|
2
|
-
|
|
3
|
-
on:
|
|
4
|
-
workflow_dispatch:
|
|
5
|
-
|
|
6
|
-
env:
|
|
7
|
-
HOST: macos-15
|
|
8
|
-
XCODE_VERSION: 16.4
|
|
9
|
-
DESTINATION_SIM: platform=iOS Simulator,name=iPhone 17
|
|
10
|
-
DESTINATION_SIM_tvOS: platform=tvOS Simulator,name=Apple TV 4K (3rd generation)
|
|
11
|
-
DESTINATION_SIM_watchOS: platform=watchOS Simulator,name=Apple Watch Series 11 (46mm)
|
|
12
|
-
|
|
13
|
-
jobs:
|
|
14
|
-
host_machine:
|
|
15
|
-
runs-on: ubuntu-latest
|
|
16
|
-
outputs:
|
|
17
|
-
host: ${{ steps.macos_host.outputs.host }}
|
|
18
|
-
steps:
|
|
19
|
-
- run: |
|
|
20
|
-
echo "host=${{ env.HOST }}" >> $GITHUB_OUTPUT
|
|
21
|
-
id: macos_host
|
|
22
|
-
|
|
23
|
-
for_real_devices:
|
|
24
|
-
needs: [host_machine]
|
|
25
|
-
name: Build WDA for real iOS and tvOS devices
|
|
26
|
-
runs-on: ${{ needs.host_machine.outputs.host }}
|
|
27
|
-
|
|
28
|
-
env:
|
|
29
|
-
PKG_NAME_IOS: "WebDriverAgentRunner-Runner"
|
|
30
|
-
ZIP_PKG_NAME_IOS: "WebDriverAgentRunner-Runner.zip"
|
|
31
|
-
PKG_NAME_TVOS: "WebDriverAgentRunner_tvOS-Runner"
|
|
32
|
-
ZIP_PKG_NAME_TVOS: "WebDriverAgentRunner_tvOS-Runner.zip"
|
|
33
|
-
|
|
34
|
-
steps:
|
|
35
|
-
- name: Checkout
|
|
36
|
-
uses: actions/checkout@v7
|
|
37
|
-
- uses: maxim-lobanov/setup-xcode@v1
|
|
38
|
-
with:
|
|
39
|
-
xcode-version: "${{ env.XCODE_VERSION }}"
|
|
40
|
-
- name: Create a zip file of WebDriverAgentRunner-Runner.app for iOS
|
|
41
|
-
run: sh $GITHUB_WORKSPACE/Scripts/ci/build-real.sh
|
|
42
|
-
env:
|
|
43
|
-
DERIVED_DATA_PATH: appium_wda_ios
|
|
44
|
-
SCHEME: WebDriverAgentRunner
|
|
45
|
-
DESTINATION: generic/platform=iOS
|
|
46
|
-
WD: appium_wda_ios/Build/Products/Debug-iphoneos
|
|
47
|
-
ZIP_PKG_NAME: "${{ env.ZIP_PKG_NAME_IOS }}"
|
|
48
|
-
|
|
49
|
-
- name: Create a zip file of WebDriverAgentRunner-Runner.app for tvOS
|
|
50
|
-
run: sh $GITHUB_WORKSPACE/Scripts/ci/build-real.sh
|
|
51
|
-
env:
|
|
52
|
-
DERIVED_DATA_PATH: appium_wda_tvos
|
|
53
|
-
SCHEME: WebDriverAgentRunner_tvOS
|
|
54
|
-
DESTINATION: generic/platform=tvOS
|
|
55
|
-
WD: appium_wda_tvos/Build/Products/Debug-appletvos
|
|
56
|
-
ZIP_PKG_NAME: "${{ env.ZIP_PKG_NAME_TVOS }}"
|
|
57
|
-
|
|
58
|
-
- name: Upload the built generic app package for iOS
|
|
59
|
-
uses: actions/upload-artifact@master
|
|
60
|
-
with:
|
|
61
|
-
name: "${{ env.PKG_NAME_IOS }}"
|
|
62
|
-
path: "${{ env.ZIP_PKG_NAME_IOS }}"
|
|
63
|
-
- name: Upload the built generic app package for tvOS
|
|
64
|
-
uses: actions/upload-artifact@master
|
|
65
|
-
with:
|
|
66
|
-
name: "${{ env.PKG_NAME_TVOS }}"
|
|
67
|
-
path: "${{ env.ZIP_PKG_NAME_TVOS }}"
|
|
68
|
-
|
|
69
|
-
for_simulator_devices:
|
|
70
|
-
needs: [host_machine]
|
|
71
|
-
name: Build WDA for ${{ matrix.target }} simulators
|
|
72
|
-
runs-on: ${{ needs.host_machine.outputs.host }}
|
|
73
|
-
|
|
74
|
-
strategy:
|
|
75
|
-
matrix:
|
|
76
|
-
include:
|
|
77
|
-
- target: ''
|
|
78
|
-
arch: x86_64
|
|
79
|
-
simulator_name: Debug-iphonesimulator
|
|
80
|
-
- target: ''
|
|
81
|
-
arch: arm64
|
|
82
|
-
simulator_name: Debug-iphonesimulator
|
|
83
|
-
- target: '_tvOS'
|
|
84
|
-
arch: x86_64
|
|
85
|
-
simulator_name: Debug-appletvsimulator
|
|
86
|
-
- target: '_tvOS'
|
|
87
|
-
arch: arm64
|
|
88
|
-
simulator_name: Debug-appletvsimulator
|
|
89
|
-
- target: '_watchOS'
|
|
90
|
-
arch: x86_64
|
|
91
|
-
simulator_name: Debug-watchsimulator
|
|
92
|
-
- target: '_watchOS'
|
|
93
|
-
arch: arm64
|
|
94
|
-
simulator_name: Debug-watchsimulator
|
|
95
|
-
steps:
|
|
96
|
-
- name: Checkout
|
|
97
|
-
uses: actions/checkout@v7
|
|
98
|
-
- uses: maxim-lobanov/setup-xcode@v1
|
|
99
|
-
with:
|
|
100
|
-
xcode-version: "${{ env.XCODE_VERSION }}"
|
|
101
|
-
- name: Create a zip of WebDriverAgentRunner${{ matrix.target }} for simulator for ${{ matrix.arch }}
|
|
102
|
-
run: |
|
|
103
|
-
DESTINATION=$DESTINATION_SIM${{ matrix.target }} sh $GITHUB_WORKSPACE/Scripts/ci/build-sim.sh
|
|
104
|
-
env:
|
|
105
|
-
SCHEME: WebDriverAgentRunner${{ matrix.target }}
|
|
106
|
-
ARCHS: ${{ matrix.arch }}
|
|
107
|
-
ZIP_PKG_NAME: "WebDriverAgentRunner${{ matrix.target }}-Build-Sim-${{ matrix.arch }}.zip"
|
|
108
|
-
DERIVED_DATA_PATH: wda_build
|
|
109
|
-
WD: wda_build/Build/Products/${{ matrix.simulator_name }}
|
|
110
|
-
- name: Upload the built generic app package for WebDriverAgentRunner${{ matrix.target }} with ${{ matrix.arch }}
|
|
111
|
-
uses: actions/upload-artifact@master
|
|
112
|
-
with:
|
|
113
|
-
name: "WebDriverAgentRunner${{ matrix.target }}-Build-Sim-${{ matrix.arch }}"
|
|
114
|
-
path: "WebDriverAgentRunner${{ matrix.target }}-Build-Sim-${{ matrix.arch }}.zip"
|