-
Notifications
You must be signed in to change notification settings - Fork 3
147 lines (131 loc) · 4.79 KB
/
tests.yml
File metadata and controls
147 lines (131 loc) · 4.79 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
name: Tests
on:
push:
branches: [ main ]
pull_request:
branches: [ main ]
jobs:
macos-tests:
runs-on: macos-latest
steps:
- uses: actions/checkout@08eba0b27e820071cde6df949e0beb9ba4906955 # v4
- uses: actions/setup-java@ead9eaa3cfe0b0fc2fa749519ae09c3d4f4080b0
with:
distribution: 'zulu'
java-version: 17
- name: Cache Build files
uses: actions/cache@638ed79f9dc94c1de1baef91bcab5edaa19451f4
with:
path: |
~/.konan
~/.gradle
key: ${{ runner.os }}-${{ hashFiles('gradle.properties') }}-v1
- uses: gradle/actions/setup-gradle@4d9f0ba0025fe599b4ebab900eb7f3a1d93ef4c2
- name: Test Apple Targets
run: ./gradlew macosX64Test iosX64Test # tvosX64Test
- name: Archive Test Results
uses: actions/upload-artifact@de65e23aa2b7e23d713bb51fbfcb6d502f8667d8
if: ${{ always() }}
with:
name: test-results-macos
path: '**/TEST-*.xml'
windows-tests:
runs-on: windows-latest
steps:
- uses: actions/checkout@08eba0b27e820071cde6df949e0beb9ba4906955 # v4
- uses: actions/setup-java@ead9eaa3cfe0b0fc2fa749519ae09c3d4f4080b0
with:
distribution: 'zulu'
java-version: 17
- uses: gradle/actions/setup-gradle@4d9f0ba0025fe599b4ebab900eb7f3a1d93ef4c2
- name: Test Windows Target
run: ./gradlew mingwX64Test
- name: Archive Test Results
uses: actions/upload-artifact@de65e23aa2b7e23d713bb51fbfcb6d502f8667d8
if: ${{ always() }}
with:
name: test-results-windows
path: '**/TEST-*.xml'
linux-tests:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@08eba0b27e820071cde6df949e0beb9ba4906955 # v4
- uses: actions/setup-java@ead9eaa3cfe0b0fc2fa749519ae09c3d4f4080b0
with:
distribution: 'zulu'
java-version: 17
- name: Cache Build files
uses: actions/cache@638ed79f9dc94c1de1baef91bcab5edaa19451f4
with:
path: |
~/.konan
~/.gradle
key: ${{ runner.os }}-${{ hashFiles('gradle.properties') }}-v1
- uses: gradle/actions/setup-gradle@4d9f0ba0025fe599b4ebab900eb7f3a1d93ef4c2
- name: Test Jvm
run: ./gradlew jvmTest mobiuskt-codegen:test checkLegacyAbi koverXmlReport
- name: Test Linux Target
run: ./gradlew linuxX64Test
- name: Archive Reports
uses: actions/upload-artifact@de65e23aa2b7e23d713bb51fbfcb6d502f8667d8
if: ${{ always() }}
with:
name: kover-report
path: "build/reports/kover/report.xml"
- name: Archive Test Results
uses: actions/upload-artifact@de65e23aa2b7e23d713bb51fbfcb6d502f8667d8
if: ${{ always() }}
with:
name: test-results-junit
path: '**/TEST-*.xml'
js-tests:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@08eba0b27e820071cde6df949e0beb9ba4906955 # v4
- uses: actions/setup-java@ead9eaa3cfe0b0fc2fa749519ae09c3d4f4080b0
with:
distribution: 'zulu'
java-version: 17
- name: Cache Build files
uses: actions/cache@638ed79f9dc94c1de1baef91bcab5edaa19451f4
with:
path: |
~/.gradle
key: ${{ runner.os }}-${{ hashFiles('gradle.properties') }}-v1
- uses: gradle/actions/setup-gradle@4d9f0ba0025fe599b4ebab900eb7f3a1d93ef4c2
- name: Test JS Targets
run: ./gradlew jsNodeTest jsBrowserTest wasmJsTest wasmWasiTest
- name: Archive Test Results
uses: actions/upload-artifact@de65e23aa2b7e23d713bb51fbfcb6d502f8667d8
if: ${{ always() }}
with:
name: test-results-js
path: '**/TEST-*.xml'
upload-kover-reports:
runs-on: ubuntu-latest
needs: [ linux-tests ]
steps:
- uses: actions/checkout@ff7abcd0c3c05ccf6adc123a8cd1fd4fb30fb493
- name: Download kover reports
uses: actions/download-artifact@de96f4613b77ec03b5cf633e7c350c32bd3c5660
with:
name: kover-report
- run: ls -la
- uses: codecov/codecov-action@5a1091511ad55cbe89839c7260b706298ca349f7
with:
token: ${{ secrets.CODECOV_TOKEN }}
files: "report.xml"
upload-junit-results:
runs-on: ubuntu-latest
needs: [ linux-tests, macos-tests, windows-tests, js-tests ]
steps:
- uses: actions/checkout@ff7abcd0c3c05ccf6adc123a8cd1fd4fb30fb493
- name: Download test results
uses: actions/download-artifact@de96f4613b77ec03b5cf633e7c350c32bd3c5660
with:
pattern: test-results*
- name: Publish Unit Test Results
uses: mikepenz/action-junit-report@452832cde25eaa14ca1ff54bd3f667ed0db35755
if: ${{ always() }}
with:
report_paths: '**/TEST-*.xml'