Skip to content

Build, lint & test #2929

Build, lint & test

Build, lint & test #2929

Triggered via merge group March 6, 2025 12:57
Status Success
Total duration 20m 41s
Artifacts 7

build-lint-test.yml

on: merge_group
Matrix: backend
Matrix: Playwright ladle tests
Matrix: playwright-e2e
Fit to window
Zoom out
Zoom in

Annotations

8 errors, 2 warnings, and 6 notices
[chrome] › e2e-tests\data-entry.e2e.ts:29:3 › full data entry flow › no recount: frontend\e2e-tests\data-entry.e2e.ts#L33
1) [chrome] › e2e-tests\data-entry.e2e.ts:29:3 › full data entry flow › no recount, no differences Error: Timed out 5000ms waiting for expect(locator).toBeVisible() Locator: getByRole('group', { name: 'Welk stembureau ga je invoeren?' }) Expected: visible Received: <element(s) not found> Call log: - expect.toBeVisible with timeout 5000ms - waiting for getByRole('group', { name: 'Welk stembureau ga je invoeren?' }) 31 | 32 | const pollingStationChoicePage = new PollingStationChoicePage(page); > 33 | await expect(pollingStationChoicePage.fieldset).toBeVisible(); | ^ 34 | await pollingStationChoicePage.pollingStationNumber.fill(pollingStation.number.toString()); 35 | await expect(pollingStationChoicePage.pollingStationFeedback).toContainText(pollingStation.name); 36 | await pollingStationChoicePage.clickStart(); at D:\a\abacus\abacus\frontend\e2e-tests\data-entry.e2e.ts:33:53
[firefox] › e2e-tests\data-entry.model.e2e.ts:185:7 › Data entry model test › Reaches state "votersVotesPageAfterResumeChanged": xstate.init → FILL_WITH_VALID_DATA → SUBMIT → GO_TO_VOTERS_VOTES_PAGE → CHANGE_VALID_DATA → NAV_TO_POLLING_STATION_PAGE → SAVE_INPUT → RESUME_DATA_ENTRY: frontend\e2e-tests\data-entry.model.e2e.ts#L1
2) [firefox] › e2e-tests\data-entry.model.e2e.ts:185:7 › Data entry model test › Reaches state "votersVotesPageAfterResumeChanged": xstate.init → FILL_WITH_VALID_DATA → SUBMIT → GO_TO_VOTERS_VOTES_PAGE → CHANGE_VALID_DATA → NAV_TO_POLLING_STATION_PAGE → SAVE_INPUT → RESUME_DATA_ENTRY Test timeout of 30000ms exceeded.
[firefox] › e2e-tests\data-entry.model.e2e.ts:185:7 › Data entry model test › Reaches state "votersVotesPageAfterResumeChanged": xstate.init → FILL_WITH_VALID_DATA → SUBMIT → GO_TO_VOTERS_VOTES_PAGE → CHANGE_VALID_DATA → NAV_TO_POLLING_STATION_PAGE → SAVE_INPUT → RESUME_DATA_ENTRY: frontend\e2e-tests\data-entry.model.e2e.ts#L332
2) [firefox] › e2e-tests\data-entry.model.e2e.ts:185:7 › Data entry model test › Reaches state "votersVotesPageAfterResumeChanged": xstate.init → FILL_WITH_VALID_DATA → SUBMIT → GO_TO_VOTERS_VOTES_PAGE → CHANGE_VALID_DATA → NAV_TO_POLLING_STATION_PAGE → SAVE_INPUT → RESUME_DATA_ENTRY Error: locator.click: Test timeout of 30000ms exceeded. Call log: - waiting for getByRole('navigation').getByRole('listitem').filter({ hasText: 'Aantal kiezers en stemmen' }) - locator resolved to <li class="idle accept" aria-current="false" id="list-item-voters-and-votes">…</li> - attempting click action - waiting for element to be visible, enabled and stable - element is visible, enabled and stable - scrolling into view if needed Path: State: {"value":"voterVotesPageEmpty"} Event: {"type":"xstate.init"} State: {"value":"votersVotesPageFilled"} via {"type":"xstate.init"} Event: {"type":"FILL_WITH_VALID_DATA"} State: {"value":"differencesPage"} via {"type":"FILL_WITH_VALID_DATA"} Event: {"type":"SUBMIT"} State: {"value":"votersVotesPageSubmitted"} via {"type":"SUBMIT"} Event: {"type":"GO_TO_VOTERS_VOTES_PAGE"} State: {"value":"votersVotesPageAfterResumeChanged"} via {"type":"RESUME_DATA_ENTRY"} 330 | const differencesPageEvents = { 331 | GO_TO_VOTERS_VOTES_PAGE: async () => { > 332 | await differencesPage.navPanel.votersAndVotes.click(); | ^ 333 | }, 334 | }; 335 | at GO_TO_VOTERS_VOTES_PAGE (D:\a\abacus\abacus\frontend\e2e-tests\data-entry.model.e2e.ts:332:59) at TestModel.testTransition (D:\a\abacus\abacus\frontend\node_modules\@xstate\graph\dist\xstate-graph.cjs.js:304:22) at TestModel.testPath (D:\a\abacus\abacus\frontend\node_modules\@xstate\graph\dist\xstate-graph.cjs.js:260:22) at D:\a\abacus\abacus\frontend\e2e-tests\data-entry.model.e2e.ts:389:9
[firefox] › e2e-tests\data-entry.model.e2e.ts:185:7 › Data entry model test › Reaches state "votersVotesPageChangedSubmitted": xstate.init → FILL_WITH_VALID_DATA → SUBMIT → GO_TO_VOTERS_VOTES_PAGE → CHANGE_VALID_DATA → GO_TO_RECOUNTED_PAGE → SAVE_UNSUBMITTED_CHANGES → GO_TO_VOTERS_VOTES_PAGE: frontend\e2e-tests\data-entry.model.e2e.ts#L1
3) [firefox] › e2e-tests\data-entry.model.e2e.ts:185:7 › Data entry model test › Reaches state "votersVotesPageChangedSubmitted": xstate.init → FILL_WITH_VALID_DATA → SUBMIT → GO_TO_VOTERS_VOTES_PAGE → CHANGE_VALID_DATA → GO_TO_RECOUNTED_PAGE → SAVE_UNSUBMITTED_CHANGES → GO_TO_VOTERS_VOTES_PAGE Test timeout of 30000ms exceeded.
[firefox] › e2e-tests\data-entry.model.e2e.ts:185:7 › Data entry model test › Reaches state "votersVotesPageChangedSubmitted": xstate.init → FILL_WITH_VALID_DATA → SUBMIT → GO_TO_VOTERS_VOTES_PAGE → CHANGE_VALID_DATA → GO_TO_RECOUNTED_PAGE → SAVE_UNSUBMITTED_CHANGES → GO_TO_VOTERS_VOTES_PAGE: frontend\e2e-tests\page-objects\data_entry\VotersAndVotesPgObj.ts#L87
3) [firefox] › e2e-tests\data-entry.model.e2e.ts:185:7 › Data entry model test › Reaches state "votersVotesPageChangedSubmitted": xstate.init → FILL_WITH_VALID_DATA → SUBMIT → GO_TO_VOTERS_VOTES_PAGE → CHANGE_VALID_DATA → GO_TO_RECOUNTED_PAGE → SAVE_UNSUBMITTED_CHANGES → GO_TO_VOTERS_VOTES_PAGE Error: locator.inputValue: Test timeout of 30000ms exceeded. Call log: - waiting for getByRole('textbox', { name: 'E Stemmen op kandidaten' }) Path: State: {"value":"voterVotesPageEmpty"} Event: {"type":"xstate.init"} State: {"value":"votersVotesPageFilled"} via {"type":"xstate.init"} Event: {"type":"FILL_WITH_VALID_DATA"} State: {"value":"votersVotesPageChangedSubmitted"} via {"type":"GO_TO_VOTERS_VOTES_PAGE"} at page-objects\data_entry\VotersAndVotesPgObj.ts:87 85 | return { 86 | // using Number() so that "" is parsed to 0 > 87 | votes_candidates_count: Number(await this.votesCandidatesCount.inputValue()), | ^ 88 | blank_votes_count: Number(await this.blankVotesCount.inputValue()), 89 | invalid_votes_count: Number(await this.invalidVotesCount.inputValue()), 90 | total_votes_cast_count: Number(await this.totalVotesCastCount.inputValue()), at VotersAndVotesPage.getVotesCounts (D:\a\abacus\abacus\frontend\e2e-tests\page-objects\data_entry\VotersAndVotesPgObj.ts:87:70) at VotersAndVotesPage.getVotersAndVotesCounts (D:\a\abacus\abacus\frontend\e2e-tests\page-objects\data_entry\VotersAndVotesPgObj.ts:97:25) at Object.votersVotesPageFilled (D:\a\abacus\abacus\frontend\e2e-tests\data-entry.model.e2e.ts:267:39) at TestModel.testState (D:\a\abacus\abacus\frontend\node_modules\@xstate\graph\dist\xstate-graph.cjs.js:283:7) at TestModel.testPath (D:\a\abacus\abacus\frontend\node_modules\@xstate\graph\dist\xstate-graph.cjs.js:266:11) at D:\a\abacus\abacus\frontend\e2e-tests\data-entry.model.e2e.ts:389:9
[firefox] › e2e-tests\data-entry.model.e2e.ts:185:7 › Data entry model test › Reaches state "votersVotesPageSubmitted": xstate.init → FILL_WITH_VALID_DATA → SUBMIT → GO_TO_VOTERS_VOTES_PAGE → CHANGE_VALID_DATA → GO_TO_RECOUNTED_PAGE → DISCARD_UNSUBMITTED_CHANGES → GO_TO_VOTERS_VOTES_PAGE: frontend\e2e-tests\data-entry.model.e2e.ts#L1
4) [firefox] › e2e-tests\data-entry.model.e2e.ts:185:7 › Data entry model test › Reaches state "votersVotesPageSubmitted": xstate.init → FILL_WITH_VALID_DATA → SUBMIT → GO_TO_VOTERS_VOTES_PAGE → CHANGE_VALID_DATA → GO_TO_RECOUNTED_PAGE → DISCARD_UNSUBMITTED_CHANGES → GO_TO_VOTERS_VOTES_PAGE Test timeout of 30000ms exceeded.
[firefox] › e2e-tests\data-entry.model.e2e.ts:185:7 › Data entry model test › Reaches state "votersVotesPageSubmitted": xstate.init → FILL_WITH_VALID_DATA → SUBMIT → GO_TO_VOTERS_VOTES_PAGE → CHANGE_VALID_DATA → GO_TO_RECOUNTED_PAGE → DISCARD_UNSUBMITTED_CHANGES → GO_TO_VOTERS_VOTES_PAGE: frontend\e2e-tests\page-objects\data_entry\VotersAndVotesPgObj.ts#L73
4) [firefox] › e2e-tests\data-entry.model.e2e.ts:185:7 › Data entry model test › Reaches state "votersVotesPageSubmitted": xstate.init → FILL_WITH_VALID_DATA → SUBMIT → GO_TO_VOTERS_VOTES_PAGE → CHANGE_VALID_DATA → GO_TO_RECOUNTED_PAGE → DISCARD_UNSUBMITTED_CHANGES → GO_TO_VOTERS_VOTES_PAGE Error: locator.inputValue: Test timeout of 30000ms exceeded. Call log: - waiting for getByRole('textbox', { name: 'D Totaal toegelaten kiezers' }) Path: State: {"value":"voterVotesPageEmpty"} Event: {"type":"xstate.init"} State: {"value":"votersVotesPageFilled"} via {"type":"xstate.init"} Event: {"type":"FILL_WITH_VALID_DATA"} State: {"value":"differencesPage"} via {"type":"FILL_WITH_VALID_DATA"} Event: {"type":"SUBMIT"} State: {"value":"votersVotesPageSubmitted"} via {"type":"SUBMIT"} Event: {"type":"GO_TO_VOTERS_VOTES_PAGE"} State: {"value":"votersVotesPageSubmitted"} via {"type":"GO_TO_VOTERS_VOTES_PAGE"} at page-objects\data_entry\VotersAndVotesPgObj.ts:73 71 | proxy_certificate_count: Number(await this.proxyCertificateCount.inputValue()), 72 | voter_card_count: Number(await this.voterCardCount.inputValue()), > 73 | total_admitted_voters_count: Number(await this.totalAdmittedVotersCount.inputValue()), | ^ 74 | }; 75 | } 76 | at VotersAndVotesPage.getVotersCounts (D:\a\abacus\abacus\frontend\e2e-tests\page-objects\data_entry\VotersAndVotesPgObj.ts:73:79) at VotersAndVotesPage.getVotersAndVotesCounts (D:\a\abacus\abacus\frontend\e2e-tests\page-objects\data_entry\VotersAndVotesPgObj.ts:96:15) at Object.votersVotesPageSubmitted (D:\a\abacus\abacus\frontend\e2e-tests\data-entry.model.e2e.ts:272:39) at TestModel.testState (D:\a\abacus\abacus\frontend\node_modules\@xstate\graph\dist\xstate-graph.cjs.js:283:7) at TestModel.testPath (D:\a\abacus\abacus\frontend\node_modules\@xstate\graph\dist\xstate-graph.cjs.js:266:11) at D:\a\abacus\abacus\frontend\e2e-tests\data-entry.model.e2e.ts:389:9
[firefox] › e2e-tests\data-entry.model.e2e.ts:185:7 › Data entry model test › Reaches state "pollingStationsPageDiscarded": xstate.init → FILL_WITH_VALID_DATA → SUBMIT → GO_TO_VOTERS_VOTES_PAGE → CHANGE_VALID_DATA → NAV_TO_POLLING_STATION_PAGE → DISCARD_INPUT: frontend\e2e-tests\page-objects\data_entry\PollingStationChoicePgObj.ts#L47
5) [firefox] › e2e-tests\data-entry.model.e2e.ts:185:7 › Data entry model test › Reaches state "pollingStationsPageDiscarded": xstate.init → FILL_WITH_VALID_DATA → SUBMIT → GO_TO_VOTERS_VOTES_PAGE → CHANGE_VALID_DATA → NAV_TO_POLLING_STATION_PAGE → DISCARD_INPUT TimeoutError: locator.click: Timeout 2000ms exceeded. Call log: - waiting for getByRole('button', { name: 'Beginnen' }) - locator resolved to <button type="button" class="_button_18xf7_1 _lg_18xf7_144">Beginnen</button> - attempting click action - waiting for element to be visible, enabled and stable - element is visible, enabled and stable - scrolling into view if needed - done scrolling at page-objects\data_entry\PollingStationChoicePgObj.ts:47 45 | // click() fails on Safari because element is visible and enabled, but not stable 46 | // so added timeout to make it fail fast > 47 | await button.click({ timeout: 2000 }); | ^ 48 | } 49 | 50 | async selectPollingStationAndClickStart(pollingStationNumber: number) { at PollingStationChoicePage.clickStart (D:\a\abacus\abacus\frontend\e2e-tests\page-objects\data_entry\PollingStationChoicePgObj.ts:47:18) at PollingStationChoicePage.selectPollingStationAndClickStart (D:\a\abacus\abacus\frontend\e2e-tests\page-objects\data_entry\PollingStationChoicePgObj.ts:52:16) at D:\a\abacus\abacus\frontend\e2e-tests\data-entry.model.e2e.ts:378:9
Slow Test: frontend\[chrome] › lib\ui\Badge\Badge.e2e.ts#L1
frontend\[chrome] › lib\ui\Badge\Badge.e2e.ts took 24.7s
Slow Test: frontend\[chrome] › lib\ui\BottomBar\BottomBar.e2e.ts#L1
frontend\[chrome] › lib\ui\BottomBar\BottomBar.e2e.ts took 23.9s
🎭 Playwright Run Summary
33 passed (42.2s)
🎭 Playwright Run Summary
33 passed (1.4m)
🎭 Playwright Run Summary
33 passed (1.5m)
🎭 Playwright Run Summary
165 passed (4.8m)
🎭 Playwright Run Summary
165 passed (5.3m)
🎭 Playwright Run Summary
5 flaky [chrome] › e2e-tests\data-entry.e2e.ts:29:3 › full data entry flow › no recount, no differences [firefox] › e2e-tests\data-entry.model.e2e.ts:185:7 › Data entry model test › Reaches state "votersVotesPageAfterResumeChanged": xstate.init → FILL_WITH_VALID_DATA → SUBMIT → GO_TO_VOTERS_VOTES_PAGE → CHANGE_VALID_DATA → NAV_TO_POLLING_STATION_PAGE → SAVE_INPUT → RESUME_DATA_ENTRY [firefox] › e2e-tests\data-entry.model.e2e.ts:185:7 › Data entry model test › Reaches state "votersVotesPageChangedSubmitted": xstate.init → FILL_WITH_VALID_DATA → SUBMIT → GO_TO_VOTERS_VOTES_PAGE → CHANGE_VALID_DATA → GO_TO_RECOUNTED_PAGE → SAVE_UNSUBMITTED_CHANGES → GO_TO_VOTERS_VOTES_PAGE [firefox] › e2e-tests\data-entry.model.e2e.ts:185:7 › Data entry model test › Reaches state "votersVotesPageSubmitted": xstate.init → FILL_WITH_VALID_DATA → SUBMIT → GO_TO_VOTERS_VOTES_PAGE → CHANGE_VALID_DATA → GO_TO_RECOUNTED_PAGE → DISCARD_UNSUBMITTED_CHANGES → GO_TO_VOTERS_VOTES_PAGE [firefox] › e2e-tests\data-entry.model.e2e.ts:185:7 › Data entry model test › Reaches state "pollingStationsPageDiscarded": xstate.init → FILL_WITH_VALID_DATA → SUBMIT → GO_TO_VOTERS_VOTES_PAGE → CHANGE_VALID_DATA → NAV_TO_POLLING_STATION_PAGE → DISCARD_INPUT 160 passed (8.2m)

Artifacts

Produced during runtime
Name Size
abacus-macos-latest
35.8 MB
abacus-ubuntu-latest
102 MB
abacus-windows-latest
24.1 MB
frontend-build
1.03 MB
playwright-report-macos-latest
708 KB
playwright-report-ubuntu-latest
714 KB
playwright-report-windows-latest
3.86 MB