Skip to content

feat: Add conditional directive #3619

feat: Add conditional directive

feat: Add conditional directive #3619

Triggered via pull request January 27, 2026 10:33
Status Success
Total duration 13m 31s
Artifacts 11

pr.yml

on: pull_request
Matrix: e2e-tests / e2e-tests
Matrix: validate-os / validate-os
e2e-tests  /  merge-reports
23s
e2e-tests / merge-reports
Fit to window
Zoom out
Zoom in

Annotations

11 errors and 10 notices
[singleBrowser:angular:chromium] › e2e/samplesMarkup.singlebrowser-e2e-spec.ts:37:7 › Samples markup consistency check › Sample daisyui/modal/default › should have a consistent markup: e2e/samplesMarkup.singlebrowser-e2e-spec.ts#L45
5) [singleBrowser:angular:chromium] › e2e/samplesMarkup.singlebrowser-e2e-spec.ts:37:7 › Samples markup consistency check › Sample daisyui/modal/default › should have a consistent markup Error: expect(string).toMatchSnapshot(expected) failed @@ -11,11 +11,10 @@ </button> </div> <div> <dialog class="modal modal-bottom sm:modal-middle" - open="" > <div class="modal-box" > <h3 @@ -26,25 +25,9 @@ <p class="py-4" > "Press ESC key, click on ✕ button or click outside the modal to close" </p> - <button - aria-label="Close" - class="absolute btn btn-circle btn-ghost btn-sm right-2 top-2" - type="button" - > - "✕" - </button> </div> - <div - class="modal-backdrop" - > - <button - type="button" - > - "Close" - </button> - </div> </dialog> </div> </body> Snapshot: daisyui/modal/default.html 43 | await preventTransitions(page); 44 | await samplesExtraAction[sampleKey]?.(page); > 45 | expect(await htmlSnapshot(page.locator('body'))).toMatchSnapshot(`${sampleKey.toLowerCase()}.html`); | ^ 46 | }); 47 | }); 48 | } at /home/runner/work/AgnosUI/AgnosUI/e2e/samplesMarkup.singlebrowser-e2e-spec.ts:45:54
[singleBrowser:angular:chromium] › e2e/samplesMarkup.singlebrowser-e2e-spec.ts:37:7 › Samples markup consistency check › Sample bootstrap/drawer/basic › should have a consistent markup: e2e/samplesMarkup.singlebrowser-e2e-spec.ts#L45
4) [singleBrowser:angular:chromium] › e2e/samplesMarkup.singlebrowser-e2e-spec.ts:37:7 › Samples markup consistency check › Sample bootstrap/drawer/basic › should have a consistent markup Error: expect(string).toMatchSnapshot(expected) failed @@ -2,60 +2,13 @@ style="overflow-x: hidden; overflow-y: hidden;" > <div class="container p-3" id="root" - inert="inert" > <button class="btn btn-primary mb-3" > "Open Drawer" </button> </div> - <div - class="au-drawer-backdrop fade show" - data-agnos-ignore-inert="data-agnos-ignore-inert" - /> - <div - aria-describedby="" - aria-labelledby="" - aria-modal="true" - class="au-drawer collapse collapse-horizontal inline-start show" - role="dialog" - style="position: fixed; outline-color: initial; outline-style: none; outline-width: initial;" - tabindex="-1" - > - <div - class="au-drawer-container" - > - <div - class="au-drawer-content" - > - <div - class="au-drawer-header" - > - "Hi, I am drawer!" - </div> - <div - class="au-drawer-body" - > - <ul> - <li> - "First item" - </li> - <li> - "Second item" - </li> - <li> - "Third item" - </li> - </ul> - </div> - </div> - </div> - <div - class="au-splitter" - tabindex="0" - /> - </div> </body> Snapshot: bootstrap/drawer/basic.html 43 | await preventTransitions(page); 44 | await samplesExtraAction[sampleKey]?.(page); > 45 | expect(await htmlSnapshot(page.locator('body'))).toMatchSnapshot(`${sampleKey.toLowerCase()}.html`); | ^ 46 | }); 47 | }); 48 | } at /home/runner/work/AgnosUI/AgnosUI/e2e/samplesMarkup.singlebrowser-e2e-spec.ts:45:54
[singleBrowser:angular:chromium] › e2e/samplesMarkup.singlebrowser-e2e-spec.ts:37:7 › Samples markup consistency check › Sample bootstrap/drawer/body › should have a consistent markup: e2e/samplesMarkup.singlebrowser-e2e-spec.ts#L45
3) [singleBrowser:angular:chromium] › e2e/samplesMarkup.singlebrowser-e2e-spec.ts:37:7 › Samples markup consistency check › Sample bootstrap/drawer/body › should have a consistent markup Error: expect(string).toMatchSnapshot(expected) failed @@ -2,11 +2,10 @@ style="overflow-x: hidden; overflow-y: hidden;" > <div class="container p-3" id="root" - inert="inert" > <div class="align-items-center d-flex mb-3" > <button @@ -57,58 +56,6 @@ class="btn btn-primary" > "ScrollToMe" </button> </div> - <div - class="au-drawer-backdrop fade show" - data-agnos-ignore-inert="data-agnos-ignore-inert" - /> - <div - aria-describedby="" - aria-labelledby="" - aria-modal="true" - class="au-drawer collapse collapse-horizontal inline-start show" - role="dialog" - style="position: fixed; outline-color: initial; outline-style: none; outline-width: initial;" - tabindex="-1" - > - <div - class="au-drawer-container" - > - <div - class="au-drawer-content" - > - <div - class="au-drawer-header" - > - <div - class="d-flex" - > - <span> - "Hi, I am drawer!" - </span> - <button - aria-label="Close" - class="btn-close ms-auto" - /> - </div> - </div> - <div - class="au-drawer-body" - > - <ul> - <li> - "First item" - </li> - <li> - "Second item" - </li> - <li> - "Third item" - </li> - </ul> - </div> - </div> - </div> - </div> </body> Snapshot: bootstrap/drawer/body.html 43 | await preventTransitions(page); 44 | await samplesExtraAction[sampleKey]?.(page); > 45 | expect(await htmlSnapshot(page.locator('body'))).toMatchSnapshot(`${sampleKey.toLowerCase()}.html`); | ^ 46 | }); 47 | }); 48 | } at /home/runner/work/AgnosUI/AgnosUI/e2e/samplesMarkup.singlebrowser-e2e-spec.ts:45:54
[singleBrowser:angular:chromium] › e2e/samplesMarkup.singlebrowser-e2e-spec.ts:37:7 › Samples markup consistency check › Sample bootstrap/drawer/position › should have a consistent markup: e2e/samplesMarkup.singlebrowser-e2e-spec.ts#L45
2) [singleBrowser:angular:chromium] › e2e/samplesMarkup.singlebrowser-e2e-spec.ts:37:7 › Samples markup consistency check › Sample bootstrap/drawer/position › should have a consistent markup Error: expect(string).toMatchSnapshot(expected) failed @@ -2,11 +2,10 @@ style="overflow-x: hidden; overflow-y: hidden;" > <div class="container p-3" id="root" - inert="inert" > <button class="btn btn-primary mb-3" > "Open Drawer" @@ -45,52 +44,6 @@ "Bottom" </option> </select> </div> </div> - <div - class="au-drawer-backdrop fade show" - data-agnos-ignore-inert="data-agnos-ignore-inert" - /> - <div - aria-describedby="" - aria-labelledby="" - aria-modal="true" - class="au-drawer collapse collapse-horizontal drawer-position-size inline-start show" - role="dialog" - style="position: fixed; outline-color: initial; outline-style: none; outline-width: initial;" - tabindex="-1" - > - <div - class="au-drawer-container" - > - <div - class="au-drawer-content" - > - <div - class="au-drawer-header" - > - "Hi, I am drawer!" - </div> - <div - class="au-drawer-body" - > - <ul> - <li> - "First item" - </li> - <li> - "Second item" - </li> - <li> - "Third item" - </li> - </ul> - </div> - </div> - </div> - <div - class="au-splitter" - tabindex="0" - /> - </div> </body> Snapshot: bootstrap/drawer/position.html 43 | await preventTransitions(page); 44 | await samplesExtraAction[sampleKey]?.(page); > 45 | expect(await htmlSnapshot(page.locator('body'))).toMatchSnapshot(`${sampleKey.toLowerCase()}.html`); | ^ 46 | }); 47 | }); 48 | } at /home/runner/work/AgnosUI/AgnosUI/e2e/samplesMarkup.singlebrowser-e2e-spec.ts:45:54
[singleBrowser:angular:chromium] › e2e/samplesMarkup.singlebrowser-e2e-spec.ts:37:7 › Samples markup consistency check › Sample bootstrap/modal/default › should have a consistent markup: e2e/samplesMarkup.singlebrowser-e2e-spec.ts#L45
1) [singleBrowser:angular:chromium] › e2e/samplesMarkup.singlebrowser-e2e-spec.ts:37:7 › Samples markup consistency check › Sample bootstrap/modal/default › should have a consistent markup Error: expect(string).toMatchSnapshot(expected) failed @@ -1,12 +1,9 @@ -<body - style="overflow-x: hidden; overflow-y: hidden;" -> +<body> <div class="container p-3" id="root" - inert="inert" > <button class="btn btn-primary" type="button" > @@ -31,58 +28,6 @@ <hr /> <div data-testid="message" /> </div> - <div - class="fade modal-backdrop show" - inert="inert" - /> - <div - class="d-block fade modal show" - tabindex="-1" - > - <div - class="modal-dialog" - > - <div - class="modal-content" - > - <div - class="modal-header" - > - <h5 - class="modal-title" - > - "Save changes" - </h5> - <button - aria-label="Close" - class="btn-close" - type="button" - /> - </div> - <div - class="modal-body" - > - "Do you want to save your changes?" - </div> - <div - class="modal-footer" - > - <button - class="btn btn-outline-primary" - type="button" - > - "Yes" - </button> - <button - class="btn btn-outline-danger" - type="button" - > - "No" - </button> - </div> - </div> - </div> - </div> </body> Snapshot: bootstrap/modal/default.html 43 | await preventTransitions(page); 44 | await samplesExtraAction[sampleKey]?.(page); > 45 | expect(await htmlSnapshot(page.locator('body'))).toMatchSnapshot(`${sampleKey.toLowerCase()}.html`); | ^ 46 | }); 47 | }); 48 | } at /home/runner/work/AgnosUI/AgnosUI/e2e/samplesMarkup.singlebrowser-e2e-spec.ts:45:54
[main:svelte:chromium] › e2e/select/select.e2e-spec.ts:118:5 › Select tests › Custom select › Navigation: e2e/select/select.e2e-spec.ts#L175
1) [main:svelte:chromium] › e2e/select/select.e2e-spec.ts:118:5 › Select tests › Custom select › Navigation Error: First badge must have been removed expect(received).toStrictEqual(expected) // deep equality - Expected - 0 + Received + 1 Array [ + "JavaScript", "JSON", ] Call Log: - Timeout 5000ms exceeded while waiting on the predicate 173 | 174 | await keyboard.press('Enter'); > 175 | await expect.poll(getBadgesState, 'First badge must have been removed').toStrictEqual(['JSON']); | ^ 176 | 177 | await keyboard.press('ArrowRight'); 178 | await keyboard.press('Enter'); at /home/runner/work/AgnosUI/AgnosUI/e2e/select/select.e2e-spec.ts:175:4
[main:react:chromium] › e2e/select/select.e2e-spec.ts:118:5 › Select tests › Custom select › Navigation: e2e/select/select.e2e-spec.ts#L180
1) [main:react:chromium] › e2e/select/select.e2e-spec.ts:118:5 › Select tests › Custom select › Navigation Error: expect(received).toBe(expected) // Object.is equality Expected: "input" Received: "body" 178 | await keyboard.press('Enter'); 179 | await expect.poll(getBadgesState, 'Last badge must have been removed').toStrictEqual([]); > 180 | expect(await page.evaluate(() => (document.activeElement!.tagName || '').toLowerCase())).toBe('input'); | ^ 181 | }); 182 | }); 183 | }); at /home/runner/work/AgnosUI/AgnosUI/e2e/select/select.e2e-spec.ts:180:93
[main:svelte:chromium] › e2e/modal/modal.e2e-spec.ts:78:3 › Modal tests › Modal stack: e2e/modal/modal.e2e-spec.ts#L90
1) [main:svelte:chromium] › e2e/modal/modal.e2e-spec.ts:78:3 › Modal tests › Modal stack ───────── Error: expect(received).toBe(expected) // Object.is equality Expected: true Received: false 88 | await otherModalPO.waitLoaded(); 89 | const secondModalHandle = await otherModalPO.locatorRoot.elementHandle(); > 90 | expect(await secondModalHandle?.evaluate((el) => el === document.activeElement)).toBe(true); | ^ 91 | await otherModalPO.locatorDisableBackdropButton.click(); 92 | await expect(otherModalPO.locatorBackdrop).toBeHidden(); 93 | await otherModalPO.locatorEnableBackdropButton.click(); at /home/runner/work/AgnosUI/AgnosUI/e2e/modal/modal.e2e-spec.ts:90:84
[main:angular:chromium] › e2e/select/select.e2e-spec.ts:118:5 › Select tests › Custom select › Navigation: e2e/select/select.e2e-spec.ts#L180
1) [main:angular:chromium] › e2e/select/select.e2e-spec.ts:118:5 › Select tests › Custom select › Navigation Error: expect(received).toBe(expected) // Object.is equality Expected: "input" Received: "body" 178 | await keyboard.press('Enter'); 179 | await expect.poll(getBadgesState, 'Last badge must have been removed').toStrictEqual([]); > 180 | expect(await page.evaluate(() => (document.activeElement!.tagName || '').toLowerCase())).toBe('input'); | ^ 181 | }); 182 | }); 183 | }); at /home/runner/work/AgnosUI/AgnosUI/e2e/select/select.e2e-spec.ts:180:93
[stackblitz:angular:chromium] › e2e/samplesMarkup.singlebrowser-e2e-spec.ts:37:7 › Samples markup consistency check › Sample bootstrap/drawer/body › should have a consistent markup: e2e/samplesMarkup.singlebrowser-e2e-spec.ts#L45
2) [stackblitz:angular:chromium] › e2e/samplesMarkup.singlebrowser-e2e-spec.ts:37:7 › Samples markup consistency check › Sample bootstrap/drawer/body › should have a consistent markup Error: expect(string).toMatchSnapshot(expected) failed @@ -2,11 +2,10 @@ style="overflow-x: hidden; overflow-y: hidden;" > <div class="container p-3" id="root" - inert="inert" > <div class="align-items-center d-flex mb-3" > <button @@ -57,58 +56,6 @@ class="btn btn-primary" > "ScrollToMe" </button> </div> - <div - class="au-drawer-backdrop fade show" - data-agnos-ignore-inert="data-agnos-ignore-inert" - /> - <div - aria-describedby="" - aria-labelledby="" - aria-modal="true" - class="au-drawer collapse collapse-horizontal inline-start show" - role="dialog" - style="position: fixed; outline-color: initial; outline-style: none; outline-width: initial;" - tabindex="-1" - > - <div - class="au-drawer-container" - > - <div - class="au-drawer-content" - > - <div - class="au-drawer-header" - > - <div - class="d-flex" - > - <span> - "Hi, I am drawer!" - </span> - <button - aria-label="Close" - class="btn-close ms-auto" - /> - </div> - </div> - <div - class="au-drawer-body" - > - <ul> - <li> - "First item" - </li> - <li> - "Second item" - </li> - <li> - "Third item" - </li> - </ul> - </div> - </div> - </div> - </div> </body> Snapshot: bootstrap/drawer/body.html 43 | await preventTransitions(page); 44 | await samplesExtraAction[sampleKey]?.(page); > 45 | expect(await htmlSnapshot(page.locator('body'))).toMatchSnapshot(`${sampleKey.toLowerCase()}.html`); | ^ 46 | }); 47 | }); 48 | } at /home/runner/work/AgnosUI/AgnosUI/e2e/samplesMarkup.singlebrowser-e2e-spec.ts:45:54
[stackblitz:angular:chromium] › e2e/samplesMarkup.singlebrowser-e2e-spec.ts:37:7 › Samples markup consistency check › Sample bootstrap/drawer/sizes › should have a consistent markup: e2e/samplesMarkup.singlebrowser-e2e-spec.ts#L45
1) [stackblitz:angular:chromium] › e2e/samplesMarkup.singlebrowser-e2e-spec.ts:37:7 › Samples markup consistency check › Sample bootstrap/drawer/sizes › should have a consistent markup Error: expect(string).toMatchSnapshot(expected) failed @@ -2,60 +2,13 @@ style="overflow-x: hidden; overflow-y: hidden;" > <div class="container p-3" id="root" - inert="inert" > <button class="btn btn-primary mb-3" > "Open Drawer" </button> </div> - <div - class="au-drawer-backdrop fade show" - data-agnos-ignore-inert="data-agnos-ignore-inert" - /> - <div - aria-describedby="" - aria-labelledby="" - aria-modal="true" - class="au-drawer collapse collapse-horizontal drawer-custom-size inline-start show" - role="dialog" - style="position: fixed; outline-color: initial; outline-style: none; outline-width: initial;" - tabindex="-1" - > - <div - class="au-drawer-container" - > - <div - class="au-drawer-content" - > - <div - class="au-drawer-header" - > - "Hi, I am drawer!" - </div> - <div - class="au-drawer-body" - > - <ul> - <li> - "First item" - </li> - <li> - "Second item" - </li> - <li> - "Third item" - </li> - </ul> - </div> - </div> - </div> - <div - class="au-splitter" - tabindex="0" - /> - </div> </body> Snapshot: bootstrap/drawer/sizes.html 43 | await preventTransitions(page); 44 | await samplesExtraAction[sampleKey]?.(page); > 45 | expect(await htmlSnapshot(page.locator('body'))).toMatchSnapshot(`${sampleKey.toLowerCase()}.html`); | ^ 46 | }); 47 | }); 48 | } at /home/runner/work/AgnosUI/AgnosUI/e2e/samplesMarkup.singlebrowser-e2e-spec.ts:45:54
🎭 Playwright Run Summary
5 flaky [singleBrowser:angular:chromium] › e2e/samplesMarkup.singlebrowser-e2e-spec.ts:37:7 › Samples markup consistency check › Sample bootstrap/modal/default › should have a consistent markup [singleBrowser:angular:chromium] › e2e/samplesMarkup.singlebrowser-e2e-spec.ts:37:7 › Samples markup consistency check › Sample bootstrap/drawer/position › should have a consistent markup [singleBrowser:angular:chromium] › e2e/samplesMarkup.singlebrowser-e2e-spec.ts:37:7 › Samples markup consistency check › Sample bootstrap/drawer/body › should have a consistent markup [singleBrowser:angular:chromium] › e2e/samplesMarkup.singlebrowser-e2e-spec.ts:37:7 › Samples markup consistency check › Sample bootstrap/drawer/basic › should have a consistent markup [singleBrowser:angular:chromium] › e2e/samplesMarkup.singlebrowser-e2e-spec.ts:37:7 › Samples markup consistency check › Sample daisyui/modal/default › should have a consistent markup 1 skipped 129 passed (2.5m)
🎭 Playwright Run Summary
1 flaky [main:svelte:chromium] › e2e/select/select.e2e-spec.ts:118:5 › Select tests › Custom select › Navigation 138 passed (2.6m)
🎭 Playwright Run Summary
1 flaky [main:react:chromium] › e2e/select/select.e2e-spec.ts:118:5 › Select tests › Custom select › Navigation 136 passed (2.6m)
🎭 Playwright Run Summary
1 skipped 130 passed (3.0m)
🎭 Playwright Run Summary
1 flaky [main:svelte:chromium] › e2e/modal/modal.e2e-spec.ts:78:3 › Modal tests › Modal stack ────────── 131 passed (3.3m)
🎭 Playwright Run Summary
1 flaky [main:angular:chromium] › e2e/select/select.e2e-spec.ts:118:5 › Select tests › Custom select › Navigation 148 passed (3.0m)
🎭 Playwright Run Summary
1 skipped 134 passed (3.4m)
🎭 Playwright Run Summary
124 passed (3.3m)
🎭 Playwright Run Summary
6 skipped 129 passed (7.4m)
🎭 Playwright Run Summary
2 flaky [stackblitz:angular:chromium] › e2e/samplesMarkup.singlebrowser-e2e-spec.ts:37:7 › Samples markup consistency check › Sample bootstrap/drawer/sizes › should have a consistent markup [stackblitz:angular:chromium] › e2e/samplesMarkup.singlebrowser-e2e-spec.ts:37:7 › Samples markup consistency check › Sample bootstrap/drawer/body › should have a consistent markup 6 skipped 127 passed (10.9m)

Artifacts

Produced during runtime
Name Size Digest
e2e-playwright-report Expired
5.04 MB
sha256:3f922f286cb796124ffc3c7f6db185728a9a2c5780c064c66a0c3162a9082d19
e2e-test-1 Expired
877 KB
sha256:f692f6db7446dc356c41afb5c6be2442cd0fcd0c2a567d0401cb1a4a1ff2def5
e2e-test-10 Expired
151 KB
sha256:a21f0ba2d8abd67d64668db92d13f22543266df534d28e212ccbf0a6e750eaed
e2e-test-2 Expired
251 KB
sha256:bd88b2774b5794f3174c007d68dc9958fa3e6234ec7062409d03928f9b81542f
e2e-test-3 Expired
911 KB
sha256:4b621907db51f5ecbeb0a277a39b54ff36a17a9e11054a5722bb02128496ecc1
e2e-test-4 Expired
971 KB
sha256:28061f28b1af62a8c0f5eade82a79729d88c329870168da27667d8b0b04cc471
e2e-test-5 Expired
791 KB
sha256:88b581ddb3be97af948d079a8567b439cab05a678d84966c165253597219d6ef
e2e-test-6 Expired
253 KB
sha256:dd1adf56918f087647dadc579bb14d27e3b26c6f163001dd69363fb14156b02f
e2e-test-7 Expired
1020 KB
sha256:4b683d10d9619a1166d08e409c740b4cc3a414494724d8bdfa311743e7bdaba1
e2e-test-8 Expired
263 KB
sha256:d4f76166c93a4bd73f923a12c7619abd7d83ae7bd33684fdec1128b25f34fc18
e2e-test-9 Expired
399 KB
sha256:6cba1cb0ea1485bf92dd881bb423b47f747d354fbf5bd2675fd54225c42e10dc