Skip to content

Commit 0044e57

Browse files
committed
chore: fix integration tests
Signed-off-by: Stephane Bouchet <[email protected]>
1 parent 08b2665 commit 0044e57

File tree

5 files changed

+75
-244
lines changed

5 files changed

+75
-244
lines changed

.github/workflows/ci.yml

Lines changed: 62 additions & 237 deletions
Original file line numberDiff line numberDiff line change
@@ -29,11 +29,8 @@ 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
3936
- name: Set up JDK 17
@@ -42,216 +39,99 @@ jobs:
4239
java-version: 17
4340
distribution: 'temurin'
4441
cache: 'gradle'
45-
- name: Run integration tests on Linux
46-
run: |
47-
export DISPLAY=:99.0
48-
Xvfb -ac :99 -screen 0 1920x1080x24 &
49-
sleep 10
50-
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
56-
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
62-
run: |
63-
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
42+
- name: Set up JDK 11 # Java 11 is only used for test NewProjectDialogTest/setProjectSdkIfAvailableTest
9443
uses: actions/setup-java@v4
9544
with:
96-
java-version: 17
45+
java-version: 11
9746
distribution: 'temurin'
9847
cache: 'gradle'
99-
- name: Run integration tests on Linux
100-
run: |
101-
export DISPLAY=:99.0
102-
Xvfb -ac :99 -screen 0 1920x1080x24 &
103-
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
108-
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
48+
- name: Prepare build
11449
run: |
11550
cd src/test-project
51+
mkdir -p build/reports
11652
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'
53+
- name: Run mainidewindow_idestatusbar_screenshot integration tests
54+
run: 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.*
55+
- name: Run dialogs_information_settings integration tests
56+
run: 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.*
57+
- name: Run dialogs_project_manipulation integration tests
58+
run: xvfb-run --server-args="-screen 0 1920x1080x24" ./gradlew integrationUITest --warning-mode none --tests com.redhat.devtools.intellij.commonuitest.fixtures.test.dialogs.project_manipulation.*
59+
- name: Run dialogs integration tests
60+
run: xvfb-run --server-args="-screen 0 1920x1080x24" ./gradlew integrationUITest --warning-mode none --tests com.redhat.devtools.intellij.commonuitest.fixtures.test.dialogs.FlatWelcomeFrameTest
61+
- name: Run mainidewindow-menubar integration tests
62+
run: xvfb-run --server-args="-screen 0 1920x1080x24" ./gradlew integrationUITest --warning-mode none --tests com.redhat.devtools.intellij.commonuitest.fixtures.test.mainidewindow.menubar.*
63+
- name: Run mainidewindow-toolwindowspane integration tests
64+
run: xvfb-run --server-args="-screen 0 1920x1080x24" ./gradlew integrationUITest --warning-mode none --tests com.redhat.devtools.intellij.commonuitest.fixtures.test.mainidewindow.toolwindowspane.*
11965
- name: Archiving tests reports
12066
uses: actions/upload-artifact@v4
12167
with:
122-
name: ${{ matrix.os }}-dialogs-information-settings-test-reports
68+
name: linux-test-reports
12369
path: src/test-project/build/reports/tests/*
12470
if: always()
12571
- name: Archiving screenshots
12672
uses: actions/upload-artifact@v4
12773
with:
128-
name: ${{ matrix.os }}-dialogs-information-settings-screenshots
74+
name: linux-screenshots
12975
path: src/test-project/build/screenshots/*
76+
if-no-files-found: ignore
13077
if: always()
13178
- name: Archiving StepLogger logs
13279
uses: actions/upload-artifact@v4
13380
with:
134-
name: ${{ matrix.os }}-dialogs-information-settings-steplogger-logs
81+
name: linux-steplogger-logs
13582
path: src/test-project/build/test-results/*
13683
if: always()
13784

138-
dialogs_project_manipulation:
139-
runs-on: ${{ matrix.os }}
140-
strategy:
141-
matrix:
142-
os: [ ubuntu-latest, macos-latest, windows-latest ]
85+
run_on_windows:
86+
runs-on: windows-latest
14387
steps:
14488
- uses: actions/checkout@v4
145-
- name: Set up JDK 11 # Java 11 is only used for test NewProjectDialogTest/setProjectSdkIfAvailableTest
146-
uses: actions/setup-java@v4
147-
with:
148-
java-version: 11
149-
distribution: 'temurin'
150-
cache: 'gradle'
15189
- name: Set up JDK 17
15290
uses: actions/setup-java@v4
15391
with:
15492
java-version: 17
15593
distribution: 'temurin'
15694
cache: 'gradle'
157-
- name: Run integration tests on Linux
158-
run: |
159-
export DISPLAY=:99.0
160-
Xvfb -ac :99 -screen 0 1920x1080x24 &
161-
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
166-
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
172-
run: |
173-
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
95+
- name: Set up JDK 11 # Java 11 is only used for test NewProjectDialogTest/setProjectSdkIfAvailableTest
20596
uses: actions/setup-java@v4
20697
with:
207-
java-version: 17
98+
java-version: 11
20899
distribution: 'temurin'
209100
cache: 'gradle'
210-
- name: Run integration tests on Linux
211-
run: |
212-
export DISPLAY=:99.0
213-
Xvfb -ac :99 -screen 0 1920x1080x24 &
214-
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
219-
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
225-
run: |
226-
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'
101+
- name: Run mainidewindow_idestatusbar_screenshot integration tests
102+
run: ./gradlew.bat integrationUITest --warning-mode none --tests com.redhat.devtools.intellij.commonuitest.utils.* --tests com.redhat.devtools.intellij.commonuitest.fixtures.test.mainidewindow.idestatusbar.*
103+
- name: Run dialogs_information_settings integration tests
104+
run: ./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.*
105+
- name: Run dialogs_project_manipulation integration tests
106+
run: ./gradlew.bat integrationUITest --warning-mode none --tests com.redhat.devtools.intellij.commonuitest.fixtures.test.dialogs.project_manipulation.*
107+
- name: Run dialogs integration tests
108+
run: ./gradlew.bat integrationUITest --warning-mode none --tests com.redhat.devtools.intellij.commonuitest.fixtures.test.dialogs.FlatWelcomeFrameTest
109+
- name: Run mainidewindow-menubar integration tests
110+
run: ./gradlew.bat integrationUITest --warning-mode none --tests com.redhat.devtools.intellij.commonuitest.fixtures.test.mainidewindow.menubar.*
111+
- name: Run mainidewindow-toolwindowspane integration tests
112+
run: ./gradlew.bat integrationUITest --warning-mode none --tests com.redhat.devtools.intellij.commonuitest.fixtures.test.mainidewindow.toolwindowspane.*
230113
- name: Archiving tests reports
231114
uses: actions/upload-artifact@v4
232115
with:
233-
name: ${{ runner.os }}-dialogs-test-reports
116+
name: windows-test-reports
234117
path: src/test-project/build/reports/tests/*
235118
if: always()
236119
- name: Archiving screenshots
237120
uses: actions/upload-artifact@v4
238121
with:
239-
name: ${{ runner.os }}-dialogs-screenshots
122+
name: windows-screenshots
240123
path: src/test-project/build/screenshots/*
124+
if-no-files-found: ignore
241125
if: always()
242126
- name: Archiving StepLogger logs
243127
uses: actions/upload-artifact@v4
244128
with:
245-
name: ${{ runner.os }}-dialogs-steplogger-logs
129+
name: windows-steplogger-logs
246130
path: src/test-project/build/test-results/*
247131
if: always()
248132

249-
mainidewindow-menubar:
250-
runs-on: ${{ matrix.os }}
251-
strategy:
252-
matrix:
253-
os: [ ubuntu-latest, macos-latest, windows-latest ]
254-
133+
run_on_macos:
134+
runs-on: macos-latest
255135
steps:
256136
- uses: actions/checkout@v4
257137
- name: Set up JDK 17
@@ -260,95 +140,40 @@ jobs:
260140
java-version: 17
261141
distribution: 'temurin'
262142
cache: 'gradle'
263-
- name: Run integration tests on Linux
264-
run: |
265-
export DISPLAY=:99.0
266-
Xvfb -ac :99 -screen 0 1920x1080x24 &
267-
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
272-
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
278-
run: |
279-
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
143+
- name: Set up JDK 11 # Java 11 is only used for test NewProjectDialogTest/setProjectSdkIfAvailableTest
312144
uses: actions/setup-java@v4
313145
with:
314-
java-version: 17
146+
java-version: 11
315147
distribution: 'temurin'
316148
cache: 'gradle'
317-
- name: Run integration tests on Linux
318-
run: |
319-
export DISPLAY=:99.0
320-
Xvfb -ac :99 -screen 0 1920x1080x24 &
321-
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
326-
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
332-
run: |
333-
cd src/test-project
334-
chmod +x gradlew
335-
./gradlew integrationUITest --warning-mode none --tests com.redhat.devtools.intellij.commonuitest.fixtures.test.mainidewindow.toolwindowspane.*
336-
if: runner.os == 'macOS'
149+
- name: Run mainidewindow_idestatusbar_screenshot integration tests
150+
run: ./gradlew integrationUITest --warning-mode none --tests com.redhat.devtools.intellij.commonuitest.utils.* --tests com.redhat.devtools.intellij.commonuitest.fixtures.test.mainidewindow.idestatusbar.*
151+
- name: Run dialogs_information_settings integration tests
152+
run: ./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.*
153+
- name: Run dialogs_project_manipulation integration tests
154+
run: ./gradlew integrationUITest --warning-mode none --tests com.redhat.devtools.intellij.commonuitest.fixtures.test.dialogs.project_manipulation.*
155+
- name: Run dialogs integration tests
156+
run: ./gradlew integrationUITest --warning-mode none --tests com.redhat.devtools.intellij.commonuitest.fixtures.test.dialogs.FlatWelcomeFrameTest
157+
- name: Run mainidewindow-menubar integration tests
158+
run: ./gradlew integrationUITest --warning-mode none --tests com.redhat.devtools.intellij.commonuitest.fixtures.test.mainidewindow.menubar.*
159+
- name: Run mainidewindow-toolwindowspane integration tests
160+
run: ./gradlew integrationUITest --warning-mode none --tests com.redhat.devtools.intellij.commonuitest.fixtures.test.mainidewindow.toolwindowspane.*
337161
- name: Archiving tests reports
338162
uses: actions/upload-artifact@v4
339163
with:
340-
name: ${{ runner.os }}-mainidewindow-toolwindowspane-test-reports
164+
name: macos-test-reports
341165
path: src/test-project/build/reports/tests/*
342166
if: always()
343167
- name: Archiving screenshots
344168
uses: actions/upload-artifact@v4
345169
with:
346-
name: ${{ runner.os }}-mainidewindow-toolwindowspane-screenshots
170+
name: macos-screenshots
347171
path: src/test-project/build/screenshots/*
172+
if-no-files-found: ignore
348173
if: always()
349174
- name: Archiving StepLogger logs
350175
uses: actions/upload-artifact@v4
351176
with:
352-
name: ${{ runner.os }}-mainidewindow-toolwindowspane-steplogger-logs
177+
name: macos-steplogger-logs
353178
path: src/test-project/build/test-results/*
354179
if: always()

.github/workflows/dialogs.information_settings.yml

Whitespace-only changes.

0 commit comments

Comments
 (0)