Skip to content

Commit 91c6a09

Browse files
committed
run detox with screenshots
1 parent 32bfc67 commit 91c6a09

File tree

3 files changed

+62
-2
lines changed

3 files changed

+62
-2
lines changed

.github/workflows/callable-e2e-test-detox.yml

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,7 @@ jobs:
5959
xcrun simctl create "iPhone 15" "iPhone 15" "$RUNTIME" || \
6060
echo "Could not create iPhone 15, will use available device"
6161
fi
62-
62+
6363
# Boot iPhone 15 if it exists, otherwise use first available iPhone
6464
if xcrun simctl list devices | grep -q "iPhone 15"; then
6565
xcrun simctl boot "iPhone 15" &
@@ -96,3 +96,11 @@ jobs:
9696
$GITHUB_WORKSPACE/amplify-js/scripts/retry-yarn-script.sh -s 'detox test -c ios.sim.debug -u' -n 3
9797
working-directory: ${{ inputs.working_directory }}
9898
shell: bash
99+
- name: Upload screenshots on failure
100+
if: failure()
101+
uses: actions/upload-artifact@v4
102+
with:
103+
name: detox-screenshots-${{ inputs.test_name }}
104+
path: ${{ inputs.working_directory }}/screenshots/
105+
retention-days: 7
106+
if-no-files-found: ignore

.github/workflows/detox-tests.yml

Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
name: Detox E2E Tests
2+
3+
on:
4+
workflow_dispatch:
5+
push:
6+
branches:
7+
- ci/v5-stable-node-20
8+
9+
permissions: read-all
10+
11+
jobs:
12+
prebuild-macos:
13+
uses: ./.github/workflows/callable-prebuild-amplify-js.yml
14+
with:
15+
runs_on: macos-latest
16+
17+
prebuild-samples-staging:
18+
secrets: inherit
19+
uses: ./.github/workflows/callable-prebuild-samples-staging.yml
20+
21+
detox-prep:
22+
needs:
23+
- prebuild-macos
24+
- prebuild-samples-staging
25+
name: Load Detox test configurations
26+
runs-on: ubuntu-latest
27+
steps:
28+
- name: Checkout repository
29+
uses: actions/checkout@24cb9080177205b6e8c946b17badbe402adc938f # v3.4.0 https://github.com/actions/checkout/commit/24cb9080177205b6e8c946b17badbe402adc938f
30+
with:
31+
path: amplify-js
32+
- name: Read detox config file
33+
id: load_config
34+
run: |
35+
echo "DETOX_INTEG_CONFIG=$(cat .github/integ-config/detox-integ-all.yml | yq -o=json | jq -c .)" >> $GITHUB_OUTPUT
36+
working-directory: ./amplify-js
37+
outputs:
38+
detox-integ-config: ${{ steps.load_config.outputs.DETOX_INTEG_CONFIG }}
39+
40+
detox-e2e-test-runner:
41+
name: Detox E2E - ${{ matrix.integ-config.test_name }}
42+
needs: detox-prep
43+
strategy:
44+
matrix:
45+
integ-config: ${{ fromJson(needs.detox-prep.outputs.detox-integ-config) }}
46+
fail-fast: false
47+
secrets: inherit
48+
uses: ./.github/workflows/callable-e2e-test-detox.yml
49+
with:
50+
test_name: ${{ matrix.integ-config.test_name }}
51+
working_directory: ${{ matrix.integ-config.working_directory }}
52+
timeout_minutes: ${{ matrix.integ-config.timeout_minutes || 45 }}

.github/workflows/push-integ-test.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ concurrency:
88
on:
99
push:
1010
branches:
11-
- ci/v5-stable-node-20
11+
- feat/example-integ-test-branch/main
1212

1313
jobs:
1414
e2e:

0 commit comments

Comments
 (0)