Skip to content

Fix crashing editor when placed in ShadowDOM on Android #4354

Fix crashing editor when placed in ShadowDOM on Android

Fix crashing editor when placed in ShadowDOM on Android #4354

Re-run triggered October 28, 2025 23:09
Status Failure
Total duration 7m 6s
Artifacts 1

ci.yml

on: pull_request
Matrix: ci
Fit to window
Zoom out
Zoom in

Annotations

10 errors and 1 notice
[firefox] › playwright/integration/examples/shadow-dom.test.ts:16:7 › shadow-dom example › renders slate editor inside nested shadow and edits content: playwright/integration/examples/shadow-dom.test.ts#L34
2) [firefox] › playwright/integration/examples/shadow-dom.test.ts:16:7 › shadow-dom example › renders slate editor inside nested shadow and edits content Retry #3 ─────────────────────────────────────────────────────────────────────────────────────── Error: Timed out 8000ms waiting for expect(locator).toHaveText(expected) Locator: locator('[data-cy="outer-shadow-root"]').locator('> div').getByRole('textbox') Expected string: "Hello, Playwright!" Received string: "This Editor is rendered within a nested ShadowHello, Playwright!DOM." Call log: - expect.toHaveText with timeout 8000ms - waiting for locator('[data-cy="outer-shadow-root"]').locator('> div').getByRole('textbox') 12 × locator resolved to <div zindex="-1" role="textbox" translate="no" aria-multiline="true" contenteditable="true" data-slate-node="value" data-slate-editor="true">…</div> - unexpected value "This Editor is rendered within a nested ShadowHello, Playwright!DOM." 32 | 33 | // Assert that the textbox contains the correct text > 34 | await expect(textbox).toHaveText('Hello, Playwright!') | ^ 35 | }) 36 | 37 | test('user can type add a new line in editor inside shadow DOM', async ({ at /home/runner/work/slate/slate/playwright/integration/examples/shadow-dom.test.ts:34:27
[firefox] › playwright/integration/examples/shadow-dom.test.ts:16:7 › shadow-dom example › renders slate editor inside nested shadow and edits content: playwright/integration/examples/shadow-dom.test.ts#L34
2) [firefox] › playwright/integration/examples/shadow-dom.test.ts:16:7 › shadow-dom example › renders slate editor inside nested shadow and edits content Retry #2 ─────────────────────────────────────────────────────────────────────────────────────── Error: Timed out 8000ms waiting for expect(locator).toHaveText(expected) Locator: locator('[data-cy="outer-shadow-root"]').locator('> div').getByRole('textbox') Expected string: "Hello, Playwright!" Received string: "This Editor is rendered within a nested ShadowHello, Playwright!DOM." Call log: - expect.toHaveText with timeout 8000ms - waiting for locator('[data-cy="outer-shadow-root"]').locator('> div').getByRole('textbox') 12 × locator resolved to <div zindex="-1" role="textbox" translate="no" aria-multiline="true" contenteditable="true" data-slate-node="value" data-slate-editor="true">…</div> - unexpected value "This Editor is rendered within a nested ShadowHello, Playwright!DOM." 32 | 33 | // Assert that the textbox contains the correct text > 34 | await expect(textbox).toHaveText('Hello, Playwright!') | ^ 35 | }) 36 | 37 | test('user can type add a new line in editor inside shadow DOM', async ({ at /home/runner/work/slate/slate/playwright/integration/examples/shadow-dom.test.ts:34:27
[firefox] › playwright/integration/examples/shadow-dom.test.ts:16:7 › shadow-dom example › renders slate editor inside nested shadow and edits content: playwright/integration/examples/shadow-dom.test.ts#L34
2) [firefox] › playwright/integration/examples/shadow-dom.test.ts:16:7 › shadow-dom example › renders slate editor inside nested shadow and edits content Retry #1 ─────────────────────────────────────────────────────────────────────────────────────── Error: Timed out 8000ms waiting for expect(locator).toHaveText(expected) Locator: locator('[data-cy="outer-shadow-root"]').locator('> div').getByRole('textbox') Expected string: "Hello, Playwright!" Received string: "This Editor is rendered within a nested ShadowHello, Playwright!DOM." Call log: - expect.toHaveText with timeout 8000ms - waiting for locator('[data-cy="outer-shadow-root"]').locator('> div').getByRole('textbox') 12 × locator resolved to <div zindex="-1" role="textbox" translate="no" aria-multiline="true" contenteditable="true" data-slate-node="value" data-slate-editor="true">…</div> - unexpected value "This Editor is rendered within a nested ShadowHello, Playwright!DOM." 32 | 33 | // Assert that the textbox contains the correct text > 34 | await expect(textbox).toHaveText('Hello, Playwright!') | ^ 35 | }) 36 | 37 | test('user can type add a new line in editor inside shadow DOM', async ({ at /home/runner/work/slate/slate/playwright/integration/examples/shadow-dom.test.ts:34:27
[firefox] › playwright/integration/examples/shadow-dom.test.ts:16:7 › shadow-dom example › renders slate editor inside nested shadow and edits content: playwright/integration/examples/shadow-dom.test.ts#L34
2) [firefox] › playwright/integration/examples/shadow-dom.test.ts:16:7 › shadow-dom example › renders slate editor inside nested shadow and edits content Error: Timed out 8000ms waiting for expect(locator).toHaveText(expected) Locator: locator('[data-cy="outer-shadow-root"]').locator('> div').getByRole('textbox') Expected string: "Hello, Playwright!" Received string: "This Editor is rendered within a nested ShadowHello, Playwright!DOM." Call log: - expect.toHaveText with timeout 8000ms - waiting for locator('[data-cy="outer-shadow-root"]').locator('> div').getByRole('textbox') 12 × locator resolved to <div zindex="-1" role="textbox" translate="no" aria-multiline="true" contenteditable="true" data-slate-node="value" data-slate-editor="true">…</div> - unexpected value "This Editor is rendered within a nested ShadowHello, Playwright!DOM." 32 | 33 | // Assert that the textbox contains the correct text > 34 | await expect(textbox).toHaveText('Hello, Playwright!') | ^ 35 | }) 36 | 37 | test('user can type add a new line in editor inside shadow DOM', async ({ at /home/runner/work/slate/slate/playwright/integration/examples/shadow-dom.test.ts:34:27
[chromium] › playwright/integration/examples/shadow-dom.test.ts:16:7 › shadow-dom example › renders slate editor inside nested shadow and edits content: playwright/integration/examples/shadow-dom.test.ts#L34
1) [chromium] › playwright/integration/examples/shadow-dom.test.ts:16:7 › shadow-dom example › renders slate editor inside nested shadow and edits content Retry #5 ─────────────────────────────────────────────────────────────────────────────────────── Error: Timed out 8000ms waiting for expect(locator).toHaveText(expected) Locator: locator('[data-cy="outer-shadow-root"]').locator('> div').getByRole('textbox') Expected string: "Hello, Playwright!" Received string: "This Editor is rendered within a nested ShadowHello, Playwright!DOM." Call log: - expect.toHaveText with timeout 8000ms - waiting for locator('[data-cy="outer-shadow-root"]').locator('> div').getByRole('textbox') 12 × locator resolved to <div zindex="-1" role="textbox" translate="no" aria-multiline="true" contenteditable="true" data-slate-node="value" data-slate-editor="true">…</div> - unexpected value "This Editor is rendered within a nested ShadowHello, Playwright!DOM." 32 | 33 | // Assert that the textbox contains the correct text > 34 | await expect(textbox).toHaveText('Hello, Playwright!') | ^ 35 | }) 36 | 37 | test('user can type add a new line in editor inside shadow DOM', async ({ at /home/runner/work/slate/slate/playwright/integration/examples/shadow-dom.test.ts:34:27
[chromium] › playwright/integration/examples/shadow-dom.test.ts:16:7 › shadow-dom example › renders slate editor inside nested shadow and edits content: playwright/integration/examples/shadow-dom.test.ts#L34
1) [chromium] › playwright/integration/examples/shadow-dom.test.ts:16:7 › shadow-dom example › renders slate editor inside nested shadow and edits content Retry #4 ─────────────────────────────────────────────────────────────────────────────────────── Error: Timed out 8000ms waiting for expect(locator).toHaveText(expected) Locator: locator('[data-cy="outer-shadow-root"]').locator('> div').getByRole('textbox') Expected string: "Hello, Playwright!" Received string: "This Editor is rendered within a nested ShadowHello, Playwright!DOM." Call log: - expect.toHaveText with timeout 8000ms - waiting for locator('[data-cy="outer-shadow-root"]').locator('> div').getByRole('textbox') 12 × locator resolved to <div zindex="-1" role="textbox" translate="no" aria-multiline="true" contenteditable="true" data-slate-node="value" data-slate-editor="true">…</div> - unexpected value "This Editor is rendered within a nested ShadowHello, Playwright!DOM." 32 | 33 | // Assert that the textbox contains the correct text > 34 | await expect(textbox).toHaveText('Hello, Playwright!') | ^ 35 | }) 36 | 37 | test('user can type add a new line in editor inside shadow DOM', async ({ at /home/runner/work/slate/slate/playwright/integration/examples/shadow-dom.test.ts:34:27
[chromium] › playwright/integration/examples/shadow-dom.test.ts:16:7 › shadow-dom example › renders slate editor inside nested shadow and edits content: playwright/integration/examples/shadow-dom.test.ts#L34
1) [chromium] › playwright/integration/examples/shadow-dom.test.ts:16:7 › shadow-dom example › renders slate editor inside nested shadow and edits content Retry #3 ─────────────────────────────────────────────────────────────────────────────────────── Error: Timed out 8000ms waiting for expect(locator).toHaveText(expected) Locator: locator('[data-cy="outer-shadow-root"]').locator('> div').getByRole('textbox') Expected string: "Hello, Playwright!" Received string: "This Editor is rendered within a nested ShadowHello, Playwright!DOM." Call log: - expect.toHaveText with timeout 8000ms - waiting for locator('[data-cy="outer-shadow-root"]').locator('> div').getByRole('textbox') 12 × locator resolved to <div zindex="-1" role="textbox" translate="no" aria-multiline="true" contenteditable="true" data-slate-node="value" data-slate-editor="true">…</div> - unexpected value "This Editor is rendered within a nested ShadowHello, Playwright!DOM." 32 | 33 | // Assert that the textbox contains the correct text > 34 | await expect(textbox).toHaveText('Hello, Playwright!') | ^ 35 | }) 36 | 37 | test('user can type add a new line in editor inside shadow DOM', async ({ at /home/runner/work/slate/slate/playwright/integration/examples/shadow-dom.test.ts:34:27
[chromium] › playwright/integration/examples/shadow-dom.test.ts:16:7 › shadow-dom example › renders slate editor inside nested shadow and edits content: playwright/integration/examples/shadow-dom.test.ts#L34
1) [chromium] › playwright/integration/examples/shadow-dom.test.ts:16:7 › shadow-dom example › renders slate editor inside nested shadow and edits content Retry #2 ─────────────────────────────────────────────────────────────────────────────────────── Error: Timed out 8000ms waiting for expect(locator).toHaveText(expected) Locator: locator('[data-cy="outer-shadow-root"]').locator('> div').getByRole('textbox') Expected string: "Hello, Playwright!" Received string: "This Editor is rendered within a nested ShadowHello, Playwright!DOM." Call log: - expect.toHaveText with timeout 8000ms - waiting for locator('[data-cy="outer-shadow-root"]').locator('> div').getByRole('textbox') 12 × locator resolved to <div zindex="-1" role="textbox" translate="no" aria-multiline="true" contenteditable="true" data-slate-node="value" data-slate-editor="true">…</div> - unexpected value "This Editor is rendered within a nested ShadowHello, Playwright!DOM." 32 | 33 | // Assert that the textbox contains the correct text > 34 | await expect(textbox).toHaveText('Hello, Playwright!') | ^ 35 | }) 36 | 37 | test('user can type add a new line in editor inside shadow DOM', async ({ at /home/runner/work/slate/slate/playwright/integration/examples/shadow-dom.test.ts:34:27
[chromium] › playwright/integration/examples/shadow-dom.test.ts:16:7 › shadow-dom example › renders slate editor inside nested shadow and edits content: playwright/integration/examples/shadow-dom.test.ts#L34
1) [chromium] › playwright/integration/examples/shadow-dom.test.ts:16:7 › shadow-dom example › renders slate editor inside nested shadow and edits content Retry #1 ─────────────────────────────────────────────────────────────────────────────────────── Error: Timed out 8000ms waiting for expect(locator).toHaveText(expected) Locator: locator('[data-cy="outer-shadow-root"]').locator('> div').getByRole('textbox') Expected string: "Hello, Playwright!" Received string: "This Editor is rendered within a nested ShadowHello, Playwright!DOM." Call log: - expect.toHaveText with timeout 8000ms - waiting for locator('[data-cy="outer-shadow-root"]').locator('> div').getByRole('textbox') 12 × locator resolved to <div zindex="-1" role="textbox" translate="no" aria-multiline="true" contenteditable="true" data-slate-node="value" data-slate-editor="true">…</div> - unexpected value "This Editor is rendered within a nested ShadowHello, Playwright!DOM." 32 | 33 | // Assert that the textbox contains the correct text > 34 | await expect(textbox).toHaveText('Hello, Playwright!') | ^ 35 | }) 36 | 37 | test('user can type add a new line in editor inside shadow DOM', async ({ at /home/runner/work/slate/slate/playwright/integration/examples/shadow-dom.test.ts:34:27
[chromium] › playwright/integration/examples/shadow-dom.test.ts:16:7 › shadow-dom example › renders slate editor inside nested shadow and edits content: playwright/integration/examples/shadow-dom.test.ts#L34
1) [chromium] › playwright/integration/examples/shadow-dom.test.ts:16:7 › shadow-dom example › renders slate editor inside nested shadow and edits content Error: Timed out 8000ms waiting for expect(locator).toHaveText(expected) Locator: locator('[data-cy="outer-shadow-root"]').locator('> div').getByRole('textbox') Expected string: "Hello, Playwright!" Received string: "This Editor is rendered within a nested ShadowHello, Playwright!DOM." Call log: - expect.toHaveText with timeout 8000ms - waiting for locator('[data-cy="outer-shadow-root"]').locator('> div').getByRole('textbox') 12 × locator resolved to <div zindex="-1" role="textbox" translate="no" aria-multiline="true" contenteditable="true" data-slate-node="value" data-slate-editor="true">…</div> - unexpected value "This Editor is rendered within a nested ShadowHello, Playwright!DOM." 32 | 33 | // Assert that the textbox contains the correct text > 34 | await expect(textbox).toHaveText('Hello, Playwright!') | ^ 35 | }) 36 | 37 | test('user can type add a new line in editor inside shadow DOM', async ({ at /home/runner/work/slate/slate/playwright/integration/examples/shadow-dom.test.ts:34:27
🎭 Playwright Run Summary
5 failed [chromium] › playwright/integration/examples/shadow-dom.test.ts:16:7 › shadow-dom example › renders slate editor inside nested shadow and edits content [firefox] › playwright/integration/examples/shadow-dom.test.ts:16:7 › shadow-dom example › renders slate editor inside nested shadow and edits content [mobile] › playwright/integration/examples/code-highlighting.test.ts:13:9 › code highlighting › code highlighting html [mobile] › playwright/integration/examples/code-highlighting.test.ts:13:9 › code highlighting › code highlighting jsx [mobile] › playwright/integration/examples/shadow-dom.test.ts:16:7 › shadow-dom example › renders slate editor inside nested shadow and edits content 3 skipped 112 passed (4.5m)

Artifacts

Produced during runtime
Name Size Digest
test-results
2.34 MB
sha256:04b0ad17cc3169a53075dac78336acae130b499af60cc8b29cd9164d6fe23571