Skip to content

Commit 8ef30bd

Browse files
authored
Integration tests fix (#331)
* chore: fix integration tests Signed-off-by: Stephane Bouchet <[email protected]> * chore: fix integration tests Signed-off-by: Stephane Bouchet <[email protected]> * chore: fix integration tests Signed-off-by: Stephane Bouchet <[email protected]> * chore: fix publishing Signed-off-by: Stephane Bouchet <[email protected]> * chore: fix integration tests Signed-off-by: Stephane Bouchet <[email protected]> * chore: fix integration tests Signed-off-by: Stephane Bouchet <[email protected]> * chore: fix integration tests Signed-off-by: Stephane Bouchet <[email protected]> * chore: fix integration tests Signed-off-by: Stephane Bouchet <[email protected]> * chore: fix integration tests Signed-off-by: Stephane Bouchet <[email protected]> * chore: fix integration tests Signed-off-by: Stephane Bouchet <[email protected]> * chore: fix integration tests Signed-off-by: Stephane Bouchet <[email protected]> * chore: fix integration tests Signed-off-by: Stephane Bouchet <[email protected]> * chore: fix integration tests Signed-off-by: Stephane Bouchet <[email protected]> * chore: fix integration tests Signed-off-by: Stephane Bouchet <[email protected]> * chore: fix integration tests Signed-off-by: Stephane Bouchet <[email protected]> * chore: fix integration tests Signed-off-by: Stephane Bouchet <[email protected]> * chore: fix integration tests Signed-off-by: Stephane Bouchet <[email protected]> * chore: fix integration tests Signed-off-by: Stephane Bouchet <[email protected]> * chore: fix integration tests Signed-off-by: Stephane Bouchet <[email protected]> * chore: fix integration tests Signed-off-by: Stephane Bouchet <[email protected]> * chore: fix integration tests Signed-off-by: Stephane Bouchet <[email protected]> --------- Signed-off-by: Stephane Bouchet <[email protected]>
1 parent 47823c7 commit 8ef30bd

File tree

4 files changed

+84
-222
lines changed

4 files changed

+84
-222
lines changed

.github/workflows/ci.yml

Lines changed: 71 additions & 215 deletions
Original file line numberDiff line numberDiff line change
@@ -29,117 +29,68 @@ jobs:
2929
name: prInfo
3030
path: prInfo/
3131

32-
mainidewindow_idestatusbar_screenshot:
33-
runs-on: ${{ matrix.os }}
34-
strategy:
35-
matrix:
36-
os: [ ubuntu-latest, macos-latest, windows-latest ]
32+
run_on_linux:
33+
runs-on: ubuntu-latest
3734
steps:
3835
- uses: actions/checkout@v4
36+
- name: Set up JDK 11 # Java 11 is only used for test NewProjectDialogTest/setProjectSdkIfAvailableTest
37+
uses: actions/setup-java@v4
38+
with:
39+
java-version: 11
40+
distribution: 'temurin'
41+
cache: 'gradle'
3942
- name: Set up JDK 17
4043
uses: actions/setup-java@v4
4144
with:
4245
java-version: 17
4346
distribution: 'temurin'
4447
cache: 'gradle'
45-
- name: Run integration tests on Linux
48+
- name: Run mainidewindow_idestatusbar_screenshot integration tests
4649
run: |
47-
export DISPLAY=:99.0
48-
Xvfb -ac :99 -screen 0 1920x1080x24 &
49-
sleep 10
5050
cd src/test-project
51-
mkdir -p build/reports
52-
chmod +x gradlew
53-
./gradlew integrationUITest --warning-mode none --tests com.redhat.devtools.intellij.commonuitest.utils.* --tests com.redhat.devtools.intellij.commonuitest.fixtures.test.mainidewindow.idestatusbar.*
54-
if: runner.os == 'Linux'
55-
- name: Run integration tests on Windows
51+
xvfb-run --server-args="-screen 0 1920x1080x24" ./gradlew integrationUITest --warning-mode none --tests com.redhat.devtools.intellij.commonuitest.utils.* --tests com.redhat.devtools.intellij.commonuitest.fixtures.test.mainidewindow.idestatusbar.*
52+
- name: Run dialogs_information_settings integration tests
5653
run: |
57-
cd src\test-project
58-
chmod +x gradlew.bat
59-
.\gradlew.bat integrationUITest --warning-mode none --tests com.redhat.devtools.intellij.commonuitest.utils.* --tests com.redhat.devtools.intellij.commonuitest.fixtures.test.mainidewindow.mainidewindow.idestatusbar.*
60-
if: runner.os == 'Windows'
61-
- name: Run integration tests on MacOS
54+
cd src/test-project
55+
xvfb-run --server-args="-screen 0 1920x1080x24" ./gradlew integrationUITest --warning-mode none --tests com.redhat.devtools.intellij.commonuitest.fixtures.test.dialogs.information.* --tests com.redhat.devtools.intellij.commonuitest.fixtures.test.dialogs.settings.*
56+
- name: Run dialogs_project_manipulation integration tests
6257
run: |
6358
cd src/test-project
64-
chmod +x gradlew
65-
./gradlew integrationUITest --warning-mode none --tests com.redhat.devtools.intellij.commonuitest.utils.* --tests com.redhat.devtools.intellij.commonuitest.fixtures.test.mainidewindow.mainidewindow.idestatusbar.*
66-
if: runner.os == 'macOS'
67-
- name: Archiving tests reports
68-
uses: actions/upload-artifact@v4
69-
with:
70-
name: ${{ matrix.os }}-mainidewindow-idestatusbar-test-reports
71-
path: src/test-project/build/reports/tests/*
72-
if: always()
73-
- name: Archiving screenshots
74-
uses: actions/upload-artifact@v4
75-
with:
76-
name: ${{ matrix.os }}-mainidewindow-idestatusbar-screenshots
77-
path: src/test-project/build/screenshots/*
78-
if: always()
79-
- name: Archiving StepLogger logs
80-
uses: actions/upload-artifact@v4
81-
with:
82-
name: ${{ matrix.os }}-mainidewindow-idestatusbar-steplogger-logs
83-
path: src/test-project/build/test-results/*
84-
if: always()
85-
86-
dialogs_information_settings:
87-
runs-on: ${{ matrix.os }}
88-
strategy:
89-
matrix:
90-
os: [ ubuntu-latest, macos-latest, windows-latest ]
91-
steps:
92-
- uses: actions/checkout@v4
93-
- name: Set up JDK 17
94-
uses: actions/setup-java@v4
95-
with:
96-
java-version: 17
97-
distribution: 'temurin'
98-
cache: 'gradle'
99-
- name: Run integration tests on Linux
59+
xvfb-run --server-args="-screen 0 1920x1080x24" ./gradlew integrationUITest --warning-mode none --tests com.redhat.devtools.intellij.commonuitest.fixtures.test.dialogs.project_manipulation.*
60+
- name: Run dialogs integration tests
10061
run: |
101-
export DISPLAY=:99.0
102-
Xvfb -ac :99 -screen 0 1920x1080x24 &
10362
cd src/test-project
104-
chmod +x gradlew
105-
./gradlew integrationUITest --warning-mode none --tests com.redhat.devtools.intellij.commonuitest.fixtures.test.dialogs.information.* --tests com.redhat.devtools.intellij.commonuitest.fixtures.test.dialogs.settings.*
106-
if: runner.os == 'Linux'
107-
- name: Run integration tests on Windows
63+
xvfb-run --server-args="-screen 0 1920x1080x24" ./gradlew integrationUITest --warning-mode none --tests com.redhat.devtools.intellij.commonuitest.fixtures.test.dialogs.FlatWelcomeFrameTest
64+
- name: Run mainidewindow-menubar integration tests
10865
run: |
109-
cd src\test-project
110-
chmod +x gradlew.bat
111-
.\gradlew.bat integrationUITest --warning-mode none --tests com.redhat.devtools.intellij.commonuitest.fixtures.test.dialogs.information.* --tests com.redhat.devtools.intellij.commonuitest.fixtures.test.dialogs.settings.*
112-
if: runner.os == 'Windows'
113-
- name: Run integration tests on MacOS
66+
cd src/test-project
67+
xvfb-run --server-args="-screen 0 1920x1080x24" ./gradlew integrationUITest --warning-mode none --tests com.redhat.devtools.intellij.commonuitest.fixtures.test.mainidewindow.menubar.*
68+
- name: Run mainidewindow-toolwindowspane integration tests
11469
run: |
11570
cd src/test-project
116-
chmod +x gradlew
117-
./gradlew integrationUITest --warning-mode none --tests com.redhat.devtools.intellij.commonuitest.fixtures.test.dialogs.information.* --tests com.redhat.devtools.intellij.commonuitest.fixtures.test.dialogs.settings.*
118-
if: runner.os == 'macOS'
71+
xvfb-run --server-args="-screen 0 1920x1080x24" ./gradlew integrationUITest --warning-mode none --tests com.redhat.devtools.intellij.commonuitest.fixtures.test.mainidewindow.toolwindowspane.*
11972
- name: Archiving tests reports
12073
uses: actions/upload-artifact@v4
12174
with:
122-
name: ${{ matrix.os }}-dialogs-information-settings-test-reports
75+
name: linux-test-reports
12376
path: src/test-project/build/reports/tests/*
12477
if: always()
12578
- name: Archiving screenshots
12679
uses: actions/upload-artifact@v4
12780
with:
128-
name: ${{ matrix.os }}-dialogs-information-settings-screenshots
81+
name: linux-screenshots
12982
path: src/test-project/build/screenshots/*
83+
if-no-files-found: ignore
13084
if: always()
13185
- name: Archiving StepLogger logs
13286
uses: actions/upload-artifact@v4
13387
with:
134-
name: ${{ matrix.os }}-dialogs-information-settings-steplogger-logs
88+
name: linux-steplogger-logs
13589
path: src/test-project/build/test-results/*
13690
if: always()
13791

138-
dialogs_project_manipulation:
139-
runs-on: ${{ matrix.os }}
140-
strategy:
141-
matrix:
142-
os: [ ubuntu-latest, macos-latest, windows-latest ]
92+
run_on_windows:
93+
runs-on: windows-latest
14394
steps:
14495
- uses: actions/checkout@v4
14596
- name: Set up JDK 11 # Java 11 is only used for test NewProjectDialogTest/setProjectSdkIfAvailableTest
@@ -154,201 +105,106 @@ jobs:
154105
java-version: 17
155106
distribution: 'temurin'
156107
cache: 'gradle'
157-
- name: Run integration tests on Linux
108+
- name: Run mainidewindow_idestatusbar_screenshot integration tests
158109
run: |
159-
export DISPLAY=:99.0
160-
Xvfb -ac :99 -screen 0 1920x1080x24 &
161110
cd src/test-project
162-
chmod +x gradlew
163-
./gradlew integrationUITest --warning-mode none --tests com.redhat.devtools.intellij.commonuitest.fixtures.test.dialogs.project_manipulation.*
164-
if: runner.os == 'Linux'
165-
- name: Run integration tests on Windows
111+
./gradlew.bat integrationUITest --warning-mode none --tests com.redhat.devtools.intellij.commonuitest.utils.* --tests com.redhat.devtools.intellij.commonuitest.fixtures.test.mainidewindow.idestatusbar.*
112+
- name: Run dialogs_information_settings integration tests
166113
run: |
167-
cd src\test-project
168-
chmod +x gradlew.bat
169-
.\gradlew.bat integrationUITest --warning-mode none --tests com.redhat.devtools.intellij.commonuitest.fixtures.test.dialogs.project_manipulation.*
170-
if: runner.os == 'Windows'
171-
- name: Run integration tests on MacOS
114+
cd src/test-project
115+
./gradlew.bat integrationUITest --warning-mode none --tests com.redhat.devtools.intellij.commonuitest.fixtures.test.dialogs.information.* --tests com.redhat.devtools.intellij.commonuitest.fixtures.test.dialogs.settings.*
116+
- name: Run dialogs_project_manipulation integration tests
172117
run: |
173118
cd src/test-project
174-
chmod +x gradlew
175-
./gradlew integrationUITest --warning-mode none --tests com.redhat.devtools.intellij.commonuitest.fixtures.test.dialogs.project_manipulation.*
176-
if: runner.os == 'macOS'
177-
- name: Archiving tests reports
178-
uses: actions/upload-artifact@v4
179-
with:
180-
name: ${{ matrix.os }}-dialogs-project-manipulation-test-reports
181-
path: src/test-project/build/reports/tests/*
182-
if: always()
183-
- name: Archiving screenshots
184-
uses: actions/upload-artifact@v4
185-
with:
186-
name: ${{ matrix.os }}-dialogs-project-manipulation-screenshots
187-
path: src/test-project/build/screenshots/*
188-
if: always()
189-
- name: Archiving StepLogger logs
190-
uses: actions/upload-artifact@v4
191-
with:
192-
name: ${{ matrix.os }}-dialogs-project-manipulation-steplogger-logs
193-
path: src/test-project/build/test-results/*
194-
if: always()
195-
196-
dialogs:
197-
runs-on: ${{ matrix.os }}
198-
strategy:
199-
matrix:
200-
os: [ ubuntu-latest, macos-latest, windows-latest ]
201-
202-
steps:
203-
- uses: actions/checkout@v4
204-
- name: Set up JDK 17
205-
uses: actions/setup-java@v4
206-
with:
207-
java-version: 17
208-
distribution: 'temurin'
209-
cache: 'gradle'
210-
- name: Run integration tests on Linux
119+
./gradlew.bat integrationUITest --warning-mode none --tests com.redhat.devtools.intellij.commonuitest.fixtures.test.dialogs.project_manipulation.*
120+
- name: Run dialogs integration tests
211121
run: |
212-
export DISPLAY=:99.0
213-
Xvfb -ac :99 -screen 0 1920x1080x24 &
214122
cd src/test-project
215-
chmod +x gradlew
216-
./gradlew integrationUITest --warning-mode none --tests com.redhat.devtools.intellij.commonuitest.fixtures.test.dialogs.FlatWelcomeFrameTest
217-
if: runner.os == 'Linux'
218-
- name: Run integration tests on Windows
123+
./gradlew.bat integrationUITest --warning-mode none --tests com.redhat.devtools.intellij.commonuitest.fixtures.test.dialogs.FlatWelcomeFrameTest
124+
- name: Run mainidewindow-menubar integration tests
219125
run: |
220-
cd src\test-project
221-
chmod +x gradlew.bat
222-
.\gradlew.bat integrationUITest --warning-mode none --tests com.redhat.devtools.intellij.commonuitest.fixtures.test.dialogs.FlatWelcomeFrameTest
223-
if: runner.os == 'Windows'
224-
- name: Run integration tests on MacOS
126+
cd src/test-project
127+
./gradlew.bat integrationUITest --warning-mode none --tests com.redhat.devtools.intellij.commonuitest.fixtures.test.mainidewindow.menubar.*
128+
- name: Run mainidewindow-toolwindowspane integration tests
225129
run: |
226130
cd src/test-project
227-
chmod +x gradlew
228-
./gradlew integrationUITest --warning-mode none --tests com.redhat.devtools.intellij.commonuitest.fixtures.test.dialogs.FlatWelcomeFrameTest
229-
if: runner.os == 'macOS'
131+
./gradlew.bat integrationUITest --warning-mode none --tests com.redhat.devtools.intellij.commonuitest.fixtures.test.mainidewindow.toolwindowspane.*
230132
- name: Archiving tests reports
231133
uses: actions/upload-artifact@v4
232134
with:
233-
name: ${{ runner.os }}-dialogs-test-reports
135+
name: windows-test-reports
234136
path: src/test-project/build/reports/tests/*
235137
if: always()
236138
- name: Archiving screenshots
237139
uses: actions/upload-artifact@v4
238140
with:
239-
name: ${{ runner.os }}-dialogs-screenshots
141+
name: windows-screenshots
240142
path: src/test-project/build/screenshots/*
143+
if-no-files-found: ignore
241144
if: always()
242145
- name: Archiving StepLogger logs
243146
uses: actions/upload-artifact@v4
244147
with:
245-
name: ${{ runner.os }}-dialogs-steplogger-logs
148+
name: windows-steplogger-logs
246149
path: src/test-project/build/test-results/*
247150
if: always()
248151

249-
mainidewindow-menubar:
250-
runs-on: ${{ matrix.os }}
251-
strategy:
252-
matrix:
253-
os: [ ubuntu-latest, macos-latest, windows-latest ]
254-
152+
run_on_macos:
153+
runs-on: macos-latest
255154
steps:
256155
- uses: actions/checkout@v4
156+
- name: Set up JDK 11 # Java 11 is only used for test NewProjectDialogTest/setProjectSdkIfAvailableTest
157+
uses: actions/setup-java@v4
158+
with:
159+
java-version: 11
160+
distribution: 'temurin'
161+
cache: 'gradle'
257162
- name: Set up JDK 17
258163
uses: actions/setup-java@v4
259164
with:
260165
java-version: 17
261166
distribution: 'temurin'
262167
cache: 'gradle'
263-
- name: Run integration tests on Linux
168+
- name: Run mainidewindow_idestatusbar_screenshot integration tests
264169
run: |
265-
export DISPLAY=:99.0
266-
Xvfb -ac :99 -screen 0 1920x1080x24 &
267170
cd src/test-project
268-
chmod +x gradlew
269-
./gradlew integrationUITest --warning-mode none --tests com.redhat.devtools.intellij.commonuitest.fixtures.test.mainidewindow.menubar.*
270-
if: runner.os == 'Linux'
271-
- name: Run integration tests on Windows
171+
./gradlew integrationUITest --warning-mode none --tests com.redhat.devtools.intellij.commonuitest.utils.* --tests com.redhat.devtools.intellij.commonuitest.fixtures.test.mainidewindow.idestatusbar.*
172+
- name: Run dialogs_information_settings integration tests
272173
run: |
273-
cd src\test-project
274-
chmod +x gradlew.bat
275-
.\gradlew.bat integrationUITest --warning-mode none --tests com.redhat.devtools.intellij.commonuitest.fixtures.test.mainidewindow.menubar.*
276-
if: runner.os == 'Windows'
277-
- name: Run integration tests on MacOS
174+
cd src/test-project
175+
./gradlew integrationUITest --warning-mode none --tests com.redhat.devtools.intellij.commonuitest.fixtures.test.dialogs.information.* --tests com.redhat.devtools.intellij.commonuitest.fixtures.test.dialogs.settings.*
176+
- name: Run dialogs_project_manipulation integration tests
278177
run: |
279178
cd src/test-project
280-
chmod +x gradlew
281-
./gradlew integrationUITest --warning-mode none --tests com.redhat.devtools.intellij.commonuitest.fixtures.test.mainidewindow.menubar.*
282-
if: runner.os == 'macOS'
283-
- name: Archiving tests reports
284-
uses: actions/upload-artifact@v4
285-
with:
286-
name: ${{ runner.os }}-mainidewindow-menubar-test-reports
287-
path: src/test-project/build/reports/tests/*
288-
if: always()
289-
- name: Archiving screenshots
290-
uses: actions/upload-artifact@v4
291-
with:
292-
name: ${{ runner.os }}-mainidewindow-menubar-screenshots
293-
path: src/test-project/build/screenshots/*
294-
if: always()
295-
- name: Archiving StepLogger logs
296-
uses: actions/upload-artifact@v4
297-
with:
298-
name: ${{ runner.os }}-mainidewindow-menubar-steplogger-logs
299-
path: src/test-project/build/test-results/*
300-
if: always()
301-
302-
303-
mainidewindow-toolwindowspane:
304-
runs-on: ${{ matrix.os }}
305-
strategy:
306-
matrix:
307-
os: [ ubuntu-latest, macos-latest, windows-latest ]
308-
309-
steps:
310-
- uses: actions/checkout@v4
311-
- name: Set up JDK 17
312-
uses: actions/setup-java@v4
313-
with:
314-
java-version: 17
315-
distribution: 'temurin'
316-
cache: 'gradle'
317-
- name: Run integration tests on Linux
179+
./gradlew integrationUITest --warning-mode none --tests com.redhat.devtools.intellij.commonuitest.fixtures.test.dialogs.project_manipulation.*
180+
- name: Run dialogs integration tests
318181
run: |
319-
export DISPLAY=:99.0
320-
Xvfb -ac :99 -screen 0 1920x1080x24 &
321182
cd src/test-project
322-
chmod +x gradlew
323-
./gradlew integrationUITest --warning-mode none --tests com.redhat.devtools.intellij.commonuitest.fixtures.test.mainidewindow.toolwindowspane.*
324-
if: runner.os == 'Linux'
325-
- name: Run integration tests on Windows
183+
./gradlew integrationUITest --warning-mode none --tests com.redhat.devtools.intellij.commonuitest.fixtures.test.dialogs.FlatWelcomeFrameTest
184+
- name: Run mainidewindow-menubar integration tests
326185
run: |
327-
cd src\test-project
328-
chmod +x gradlew.bat
329-
.\gradlew.bat integrationUITest --warning-mode none --tests com.redhat.devtools.intellij.commonuitest.fixtures.test.mainidewindow.toolwindowspane.*
330-
if: runner.os == 'Windows'
331-
- name: Run integration tests on MacOS
186+
cd src/test-project
187+
./gradlew integrationUITest --warning-mode none --tests com.redhat.devtools.intellij.commonuitest.fixtures.test.mainidewindow.menubar.*
188+
- name: Run mainidewindow-toolwindowspane integration tests
332189
run: |
333190
cd src/test-project
334-
chmod +x gradlew
335191
./gradlew integrationUITest --warning-mode none --tests com.redhat.devtools.intellij.commonuitest.fixtures.test.mainidewindow.toolwindowspane.*
336-
if: runner.os == 'macOS'
337192
- name: Archiving tests reports
338193
uses: actions/upload-artifact@v4
339194
with:
340-
name: ${{ runner.os }}-mainidewindow-toolwindowspane-test-reports
195+
name: macos-test-reports
341196
path: src/test-project/build/reports/tests/*
342197
if: always()
343198
- name: Archiving screenshots
344199
uses: actions/upload-artifact@v4
345200
with:
346-
name: ${{ runner.os }}-mainidewindow-toolwindowspane-screenshots
201+
name: macos-screenshots
347202
path: src/test-project/build/screenshots/*
203+
if-no-files-found: ignore
348204
if: always()
349205
- name: Archiving StepLogger logs
350206
uses: actions/upload-artifact@v4
351207
with:
352-
name: ${{ runner.os }}-mainidewindow-toolwindowspane-steplogger-logs
208+
name: macos-steplogger-logs
353209
path: src/test-project/build/test-results/*
354210
if: always()

0 commit comments

Comments
 (0)