-
Notifications
You must be signed in to change notification settings - Fork 0
148 lines (135 loc) · 6.34 KB
/
feature-tests.yml
File metadata and controls
148 lines (135 loc) · 6.34 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
name: Test Feature Flags
on:
# Run at 5 AM UTC every 2 days
schedule:
- cron: "0 5 */2 * *"
# Allow manual triggering
workflow_dispatch:
inputs:
environment:
description: "Environment to run tests against"
type: choice
options:
- prod
- dev
default: "prod"
required: true
use-beta:
description: "Use beta version"
type: boolean
default: false
required: false
jobs:
test-feature-flags:
name: Run Feature Flags Test
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Run Async Test
uses: devicecloud-dev/device-cloud-for-maestro@v2
with:
api-key: ${{ github.event.inputs.environment == 'dev' && secrets.DCD_DEV_API_KEY || secrets.DCD_API_KEY }}
api-url: ${{ github.event.inputs.environment == 'dev' && 'https://api.dev.devicecloud.dev' || '' }}
app-file: ./binaries/sample.apk
workspace: ./flows/android-flow.yaml
use-beta: ${{ github.event.inputs.use-beta }}
name: Run Async Test
async: true
- name: Run json-file Test
uses: devicecloud-dev/device-cloud-for-maestro@v2
with:
api-key: ${{ github.event.inputs.environment == 'dev' && secrets.DCD_DEV_API_KEY || secrets.DCD_API_KEY }}
api-url: ${{ github.event.inputs.environment == 'dev' && 'https://api.dev.devicecloud.dev' || '' }}
app-file: ./binaries/sample.apk
workspace: ./flows/android-flow.yaml
use-beta: ${{ github.event.inputs.use-beta }}
name: Run Json File Flag Test
json-file: true
- name: Extract and Log Console URL
run: |
jq -r '.consoleUrl' *_dcd.json
- name: Run Android Locale Test
continue-on-error: true
uses: devicecloud-dev/device-cloud-for-maestro@v2
with:
api-key: ${{ github.event.inputs.environment == 'dev' && secrets.DCD_DEV_API_KEY || secrets.DCD_API_KEY }}
api-url: ${{ github.event.inputs.environment == 'dev' && 'https://api.dev.devicecloud.dev' || '' }}
app-file: ./binaries/sample.apk
workspace: ./flows/android-flow-german.yaml
device-locale: "de_DE"
use-beta: ${{ github.event.inputs.use-beta }}
name: Run Android Locale Test
- name: Run iOS Locale Test
uses: devicecloud-dev/device-cloud-for-maestro@v2
with:
api-key: ${{ github.event.inputs.environment == 'dev' && secrets.DCD_DEV_API_KEY || secrets.DCD_API_KEY }}
api-url: ${{ github.event.inputs.environment == 'dev' && 'https://api.dev.devicecloud.dev' || '' }}
app-binary-id: ${{ github.event.inputs.environment == 'dev' && '9e4f3c0b-146e-4bc8-8820-d49eb5e25198' || '81155b2c-e18d-4527-871a-6788068d836b' }}
workspace: ./flows/ios-flow-german.yaml
device-locale: "de_DE"
use-beta: ${{ github.event.inputs.use-beta }}
name: Run iOS Locale Test
- name: Run Android Orientation Test
uses: devicecloud-dev/device-cloud-for-maestro@v2
with:
api-key: ${{ github.event.inputs.environment == 'dev' && secrets.DCD_DEV_API_KEY || secrets.DCD_API_KEY }}
api-url: ${{ github.event.inputs.environment == 'dev' && 'https://api.dev.devicecloud.dev' || '' }}
app-file: ./binaries/sample.apk
workspace: ./flows/android-flow.yaml
orientation: 90
use-beta: ${{ github.event.inputs.use-beta }}
name: Run Android Orientation Test
- name: Run Download Artifacts Test
uses: devicecloud-dev/device-cloud-for-maestro@v2
with:
api-key: ${{ github.event.inputs.environment == 'dev' && secrets.DCD_DEV_API_KEY || secrets.DCD_API_KEY }}
api-url: ${{ github.event.inputs.environment == 'dev' && 'https://api.dev.devicecloud.dev' || '' }}
app-file: ./binaries/sample.apk
workspace: ./flows/android-flow.yaml
download-artifacts: ALL
use-beta: ${{ github.event.inputs.use-beta }}
name: Run Download Artifacts Test
- name: Assert Download Artifacts ZIP File
run: |
# Check if any download zip files were created
if ls artifacts.zip 1> /dev/null 2>&1; then
echo "✅ Download artifacts ZIP file found:"
ls -la artifacts.zip
else
echo "❌ No download artifacts ZIP file found"
echo "Files in current directory:"
ls -la
exit 1
fi
- name: Run Android Environment Variables Test
uses: devicecloud-dev/device-cloud-for-maestro@v2
with:
api-key: ${{ github.event.inputs.environment == 'dev' && secrets.DCD_DEV_API_KEY || secrets.DCD_API_KEY }}
api-url: ${{ github.event.inputs.environment == 'dev' && 'https://api.dev.devicecloud.dev' || '' }}
app-file: ./binaries/sample.apk
workspace: ./flows/android-flow-env.yaml
env: |
BUNDLEID=org.wikipedia
use-beta: ${{ github.event.inputs.use-beta }}
name: Run Android Environment Variables Test
- name: Run iOS Environment Variables Test
uses: devicecloud-dev/device-cloud-for-maestro@v2
with:
api-key: ${{ github.event.inputs.environment == 'dev' && secrets.DCD_DEV_API_KEY || secrets.DCD_API_KEY }}
api-url: ${{ github.event.inputs.environment == 'dev' && 'https://api.dev.devicecloud.dev' || '' }}
app-binary-id: ${{ github.event.inputs.environment == 'dev' && '9e4f3c0b-146e-4bc8-8820-d49eb5e25198' || '81155b2c-e18d-4527-871a-6788068d836b' }}
workspace: ./flows/ios-flow-env.yaml
env: |
BUNDLEID=org.wikimedia.wikipedia
use-beta: ${{ github.event.inputs.use-beta }}
name: Run iOS Environment Variables Test
- name: Run Android Camera Check Test
uses: devicecloud-dev/device-cloud-for-maestro@v2
with:
api-key: ${{ github.event.inputs.environment == 'dev' && secrets.DCD_DEV_API_KEY || secrets.DCD_API_KEY }}
api-url: ${{ github.event.inputs.environment == 'dev' && 'https://api.dev.devicecloud.dev' || '' }}
app-file: ./binaries/sample.apk
workspace: ./flows/check-cam.yaml
use-beta: ${{ github.event.inputs.use-beta }}
name: Run Android Camera Check Test
retry: 1