Skip to content

fix(select): remove item focus style when there are no selected items only at ionic mode #17275

fix(select): remove item focus style when there are no selected items only at ionic mode

fix(select): remove item focus style when there are no selected items only at ionic mode #17275

Triggered via pull request October 28, 2025 15:31
@joselriojoselrio
synchronize #30750
ROU-12235
Status Failure
Total duration 9m 55s
Artifacts 16

build.yml

on: pull_request
build-react
47s
build-react
build-vue
41s
build-vue
Matrix: test-core-screenshot
build-angular
52s
build-angular
build-angular-server
49s
build-angular-server
test-core-clean-build
11s
test-core-clean-build
test-core-lint
54s
test-core-lint
test-core-spec
53s
test-core-spec
build-react-router
27s
build-react-router
build-vue-router
47s
build-vue-router
verify-screenshots
3s
verify-screenshots
Matrix: test-angular-e2e
Matrix: test-react-e2e
Matrix: test-react-router-e2e
Matrix: test-vue-e2e
verify-test-angular-e2e
3s
verify-test-angular-e2e
verify-test-react-e2e
3s
verify-test-react-e2e
verify-test-react-router-e2e
2s
verify-test-react-router-e2e
verify-test-vue-e2e
3s
verify-test-vue-e2e
Fit to window
Zoom out
Zoom in

Annotations

42 errors and 9 notices
[Mobile Chrome] › src/components/radio/test/a11y/radio.e2e.ts:117:11 › radio: a11y - md/ltr/dark › radio: keyboard navigation - md/ltr/dark › tabbing should switch between radio groups: src/components/radio/test/a11y/radio.e2e.ts#L122
1) [Mobile Chrome] › src/components/radio/test/a11y/radio.e2e.ts:117:11 › radio: a11y - md/ltr/dark › radio: keyboard navigation - md/ltr/dark › tabbing should switch between radio groups Retry #1 ─────────────────────────────────────────────────────────────────────────────────────── Error: expect(locator).toBeFocused() failed Locator: locator('#first-group ion-radio').first() Expected: focused Received: inactive Timeout: 5000ms Call log: - Expect "toBeFocused" with timeout 5000ms - waiting for locator('#first-group ion-radio').first() 9 × locator resolved to <ion-radio value="huey" role="radio" tabindex="0" aria-checked="true" class="md in-item radio-checked radio-label-placement-start hydrated">Huey</ion-radio> - unexpected value "inactive" 120 | 121 | await pageUtils.pressKeys('Tab'); > 122 | await expect(firstGroupRadios.nth(0)).toBeFocused(); | ^ 123 | 124 | await pageUtils.pressKeys('Tab'); 125 | await expect(secondGroupRadios.nth(0)).toBeFocused(); at /ionic/src/components/radio/test/a11y/radio.e2e.ts:122:47
[Mobile Chrome] › src/components/radio/test/a11y/radio.e2e.ts:117:11 › radio: a11y - md/ltr/dark › radio: keyboard navigation - md/ltr/dark › tabbing should switch between radio groups: src/components/radio/test/a11y/radio.e2e.ts#L122
1) [Mobile Chrome] › src/components/radio/test/a11y/radio.e2e.ts:117:11 › radio: a11y - md/ltr/dark › radio: keyboard navigation - md/ltr/dark › tabbing should switch between radio groups Error: expect(locator).toBeFocused() failed Locator: locator('#first-group ion-radio').first() Expected: focused Received: inactive Timeout: 5000ms Call log: - Expect "toBeFocused" with timeout 5000ms - waiting for locator('#first-group ion-radio').first() 9 × locator resolved to <ion-radio value="huey" role="radio" tabindex="0" aria-checked="true" class="md in-item radio-checked radio-label-placement-start hydrated">Huey</ion-radio> - unexpected value "inactive" 120 | 121 | await pageUtils.pressKeys('Tab'); > 122 | await expect(firstGroupRadios.nth(0)).toBeFocused(); | ^ 123 | 124 | await pageUtils.pressKeys('Tab'); 125 | await expect(secondGroupRadios.nth(0)).toBeFocused(); at /ionic/src/components/radio/test/a11y/radio.e2e.ts:122:47
test-core-screenshot (13, 20)
Process completed with exit code 1.
[Mobile Chrome] › src/components/toolbar/test/basic/toolbar.e2e.ts:207:11 › toolbar: basic - ionic/md/ltr/light › slot content - ionic/md/ltr/light › should not have visual regressions with slotted images: src/components/toolbar/test/basic/toolbar.e2e.ts#L226
1) [Mobile Chrome] › src/components/toolbar/test/basic/toolbar.e2e.ts:207:11 › toolbar: basic - ionic/md/ltr/light › slot content - ionic/md/ltr/light › should not have visual regressions with slotted images Retry #2 ─────────────────────────────────────────────────────────────────────────────────────── Error: expect(locator).toHaveScreenshot(expected) failed Expected an image 393px by 56px, received 393px by 66px. 5006 pixels (ratio 0.20 of all image pixels) are different. Snapshot: toolbar-basic-slotted-images-ionic-md-ltr-light.png Call log: - Expect "toHaveScreenshot(toolbar-basic-slotted-images-ionic-md-ltr-light.png)" with timeout 5000ms - verifying given screenshot expectation - waiting for locator('ion-header') - locator resolved to <ion-header role="banner" class="ionic header-ionic header-collapse-none hydrated">…</ion-header> - taking element screenshot - disabled all CSS animations - waiting for fonts to load... - fonts loaded - attempting scroll into view action - waiting for element to be stable - Expected an image 393px by 56px, received 393px by 66px. 5006 pixels (ratio 0.20 of all image pixels) are different. - waiting 100ms before taking screenshot - waiting for locator('ion-header') - locator resolved to <ion-header role="banner" class="ionic header-ionic header-collapse-none hydrated">…</ion-header> - taking element screenshot - disabled all CSS animations - waiting for fonts to load... - fonts loaded - attempting scroll into view action - waiting for element to be stable - captured a stable screenshot - Expected an image 393px by 56px, received 393px by 66px. 5006 pixels (ratio 0.20 of all image pixels) are different. 224 | 225 | const header = page.locator('ion-header'); > 226 | await expect(header).toHaveScreenshot(screenshot(`toolbar-basic-slotted-images`)); | ^ 227 | }); 228 | 229 | test('should not have visual regressions with nested slotted images', async ({ page }) => { at /ionic/src/components/toolbar/test/basic/toolbar.e2e.ts:226:30
[Mobile Chrome] › src/components/toolbar/test/basic/toolbar.e2e.ts:207:11 › toolbar: basic - ionic/md/ltr/light › slot content - ionic/md/ltr/light › should not have visual regressions with slotted images: src/components/toolbar/test/basic/toolbar.e2e.ts#L226
1) [Mobile Chrome] › src/components/toolbar/test/basic/toolbar.e2e.ts:207:11 › toolbar: basic - ionic/md/ltr/light › slot content - ionic/md/ltr/light › should not have visual regressions with slotted images Retry #1 ─────────────────────────────────────────────────────────────────────────────────────── Error: expect(locator).toHaveScreenshot(expected) failed Expected an image 393px by 56px, received 393px by 66px. 5006 pixels (ratio 0.20 of all image pixels) are different. Snapshot: toolbar-basic-slotted-images-ionic-md-ltr-light.png Call log: - Expect "toHaveScreenshot(toolbar-basic-slotted-images-ionic-md-ltr-light.png)" with timeout 5000ms - verifying given screenshot expectation - waiting for locator('ion-header') - locator resolved to <ion-header role="banner" class="ionic header-ionic header-collapse-none hydrated">…</ion-header> - taking element screenshot - disabled all CSS animations - waiting for fonts to load... - fonts loaded - attempting scroll into view action - waiting for element to be stable - Expected an image 393px by 56px, received 393px by 66px. 5006 pixels (ratio 0.20 of all image pixels) are different. - waiting 100ms before taking screenshot - waiting for locator('ion-header') - locator resolved to <ion-header role="banner" class="ionic header-ionic header-collapse-none hydrated">…</ion-header> - taking element screenshot - disabled all CSS animations - waiting for fonts to load... - fonts loaded - attempting scroll into view action - waiting for element to be stable - captured a stable screenshot - Expected an image 393px by 56px, received 393px by 66px. 5006 pixels (ratio 0.20 of all image pixels) are different. 224 | 225 | const header = page.locator('ion-header'); > 226 | await expect(header).toHaveScreenshot(screenshot(`toolbar-basic-slotted-images`)); | ^ 227 | }); 228 | 229 | test('should not have visual regressions with nested slotted images', async ({ page }) => { at /ionic/src/components/toolbar/test/basic/toolbar.e2e.ts:226:30
[Mobile Chrome] › src/components/toolbar/test/basic/toolbar.e2e.ts:207:11 › toolbar: basic - ionic/md/ltr/light › slot content - ionic/md/ltr/light › should not have visual regressions with slotted images: src/components/toolbar/test/basic/toolbar.e2e.ts#L226
1) [Mobile Chrome] › src/components/toolbar/test/basic/toolbar.e2e.ts:207:11 › toolbar: basic - ionic/md/ltr/light › slot content - ionic/md/ltr/light › should not have visual regressions with slotted images Error: expect(locator).toHaveScreenshot(expected) failed Expected an image 393px by 56px, received 393px by 66px. 5006 pixels (ratio 0.20 of all image pixels) are different. Snapshot: toolbar-basic-slotted-images-ionic-md-ltr-light.png Call log: - Expect "toHaveScreenshot(toolbar-basic-slotted-images-ionic-md-ltr-light.png)" with timeout 5000ms - verifying given screenshot expectation - waiting for locator('ion-header') - locator resolved to <ion-header role="banner" class="ionic header-ionic header-collapse-none hydrated">…</ion-header> - taking element screenshot - disabled all CSS animations - waiting for fonts to load... - fonts loaded - attempting scroll into view action - waiting for element to be stable - Expected an image 393px by 56px, received 393px by 66px. 5006 pixels (ratio 0.20 of all image pixels) are different. - waiting 100ms before taking screenshot - waiting for locator('ion-header') - locator resolved to <ion-header role="banner" class="ionic header-ionic header-collapse-none hydrated">…</ion-header> - taking element screenshot - disabled all CSS animations - waiting for fonts to load... - fonts loaded - attempting scroll into view action - waiting for element to be stable - captured a stable screenshot - Expected an image 393px by 56px, received 393px by 66px. 5006 pixels (ratio 0.20 of all image pixels) are different. 224 | 225 | const header = page.locator('ion-header'); > 226 | await expect(header).toHaveScreenshot(screenshot(`toolbar-basic-slotted-images`)); | ^ 227 | }); 228 | 229 | test('should not have visual regressions with nested slotted images', async ({ page }) => { at /ionic/src/components/toolbar/test/basic/toolbar.e2e.ts:226:30
test-core-screenshot (1, 20)
The strategy configuration was canceled because "test-core-screenshot._13_20" failed
test-core-screenshot (1, 20)
Process completed with exit code 12.
test-core-screenshot (1, 20)
The operation was canceled.
test-core-screenshot (2, 20)
The strategy configuration was canceled because "test-core-screenshot._13_20" failed
test-core-screenshot (2, 20)
Process completed with exit code 12.
test-core-screenshot (2, 20)
The operation was canceled.
test-core-screenshot (3, 20)
The strategy configuration was canceled because "test-core-screenshot._13_20" failed
test-core-screenshot (3, 20)
Process completed with exit code 12.
test-core-screenshot (3, 20)
The operation was canceled.
test-core-screenshot (14, 20)
The strategy configuration was canceled because "test-core-screenshot._13_20" failed
test-core-screenshot (14, 20)
The operation was canceled.
test-core-screenshot (4, 20)
The strategy configuration was canceled because "test-core-screenshot._13_20" failed
test-core-screenshot (4, 20)
Process completed with exit code 12.
test-core-screenshot (4, 20)
The operation was canceled.
test-core-screenshot (6, 20)
The strategy configuration was canceled because "test-core-screenshot._13_20" failed
test-core-screenshot (6, 20)
Process completed with exit code 12.
test-core-screenshot (6, 20)
The operation was canceled.
test-core-screenshot (5, 20)
The strategy configuration was canceled because "test-core-screenshot._13_20" failed
test-core-screenshot (5, 20)
Process completed with exit code 12.
test-core-screenshot (5, 20)
The operation was canceled.
test-core-screenshot (16, 20)
The strategy configuration was canceled because "test-core-screenshot._13_20" failed
test-core-screenshot (16, 20)
Process completed with exit code 12.
test-core-screenshot (16, 20)
The operation was canceled.
test-core-screenshot (19, 20)
The strategy configuration was canceled because "test-core-screenshot._13_20" failed
test-core-screenshot (19, 20)
Process completed with exit code 12.
test-core-screenshot (19, 20)
The operation was canceled.
test-core-screenshot (17, 20)
The strategy configuration was canceled because "test-core-screenshot._13_20" failed
test-core-screenshot (17, 20)
Process completed with exit code 12.
test-core-screenshot (17, 20)
The operation was canceled.
test-core-screenshot (15, 20)
The strategy configuration was canceled because "test-core-screenshot._13_20" failed
test-core-screenshot (15, 20)
Process completed with exit code 12.
test-core-screenshot (15, 20)
The operation was canceled.
test-core-screenshot (18, 20)
The strategy configuration was canceled because "test-core-screenshot._13_20" failed
test-core-screenshot (18, 20)
Process completed with exit code 12.
test-core-screenshot (18, 20)
The operation was canceled.
verify-screenshots
Process completed with exit code 1.
🎭 Playwright Run Summary
360 skipped 276 passed (2.3m)
🎭 Playwright Run Summary
2 skipped 669 passed (3.5m)
🎭 Playwright Run Summary
368 skipped 303 passed (3.6m)
🎭 Playwright Run Summary
1 skipped 676 passed (3.8m)
🎭 Playwright Run Summary
8 skipped 680 passed (3.8m)
🎭 Playwright Run Summary
8 skipped 660 passed (4.0m)
🎭 Playwright Run Summary
1 flaky [Mobile Chrome] › src/components/radio/test/a11y/radio.e2e.ts:117:11 › radio: a11y - md/ltr/dark › radio: keyboard navigation - md/ltr/dark › tabbing should switch between radio groups 4 skipped 675 passed (4.9m)
🎭 Playwright Run Summary
1 failed [Mobile Chrome] › src/components/toolbar/test/basic/toolbar.e2e.ts:207:11 › toolbar: basic - ionic/md/ltr/light › slot content - ionic/md/ltr/light › should not have visual regressions with slotted images 36 skipped 818 passed (5.8m)
🎭 Playwright Run Summary
14 skipped 489 passed (6.1m)

Artifacts

Produced during runtime
Name Size Digest
ionic-angular
866 KB
sha256:98cd06fa0c19d118b24f4d05aded1f1eb84aba6d6f0746668d3dff56125cae1c
ionic-angular-server
8.57 KB
sha256:28d244630e9b5e16ffe3f551e77cca2ec3d0b50fee833e8d78cc6bbccf4c3bd8
ionic-core
5.17 MB
sha256:c81af3eebbea52017b075561de411071829f04f8293856cff868ed3c388eec8e
ionic-react
404 KB
sha256:5e1f5643b39cc880c25aacab41b580e78fe4d1752cb2be612920b3a75b07ae2e
ionic-react-router
27.9 KB
sha256:8793f59bc94f5869497ad3744277014725e00f993f729966588a38853870750e
ionic-vue
435 KB
sha256:f208222342ba8be087b0d03ebcac2fb8720542d46d8b1859ecc6518b5c6d20b6
ionic-vue-router
17.1 KB
sha256:485cd82613e1edf293f2bc4b9650142ae4a989c4df6113e13e5878233f27b9e8
test-results-10-20
444 KB
sha256:42e2102e82d5dcf965ae1b61be99fbbe9c715cb451368a4ca0831b2065a26e20
test-results-11-20
1.68 MB
sha256:1f059bd667c655982e51d9a95b96d2f619e2f4e907742c935863fb33cdaa572d
test-results-12-20
481 KB
sha256:cd6bb9ec490b037065e908ef823722e53f2fa01749e494d16732edfc0471a5c3
test-results-13-20
2.04 MB
sha256:85ae440910c8c5879695e45b4fcbdf5f2247ff38fae5cd98ef2c065701dcbf5f
test-results-14-20
426 KB
sha256:a58435983bdcb1509dc52a48b425beb9c47fe9974f7f2e40d46300c282d9477d
test-results-20-20
342 KB
sha256:bd9ea4de9d0e06f2bbde931f499d1e2e84ed60acb806f72afe65a04c93a1ed6c
test-results-7-20
362 KB
sha256:8ad5db9384dd35fdd81400bc0e24723bba75e4abd530028ca0abbc418b19d57b
test-results-8-20
450 KB
sha256:7d2cd5d40db297d5ada9867cc4e709e62861e1f65be36be30f9bb47081e0deee
test-results-9-20
483 KB
sha256:813da7faa3868a9b947523a21540e5e98d863cf61e911e12dfa197a6770e75c0