diff --git a/test/e2e/specs/__snapshots__/writing-flow.test.js.snap b/test/e2e/specs/__snapshots__/writing-flow.test.js.snap index e9ad304b10799..39e68f8b31005 100644 --- a/test/e2e/specs/__snapshots__/writing-flow.test.js.snap +++ b/test/e2e/specs/__snapshots__/writing-flow.test.js.snap @@ -7,13 +7,21 @@ exports[`adding blocks Should navigate inner blocks with arrow keys 1`] = `
- -

First column paragraph

- + +
+ +

First column paragraph

+ +
+ - -

Second column paragraph

- + +
+ +

Second column paragraph

+ +
+
diff --git a/test/e2e/specs/writing-flow.test.js b/test/e2e/specs/writing-flow.test.js index 70665c8e2f192..8dc0271dfea9c 100644 --- a/test/e2e/specs/writing-flow.test.js +++ b/test/e2e/specs/writing-flow.test.js @@ -29,7 +29,9 @@ describe( 'adding blocks', () => { await page.keyboard.type( 'First column paragraph' ); // Arrow down should navigate through layouts in columns block (to - // its default appender). + // its default appender). Two key presses are required since the first + // will land user on the Column wrapper block. + await page.keyboard.press( 'ArrowDown' ); await page.keyboard.press( 'ArrowDown' ); await page.keyboard.type( 'Second column paragraph' ); @@ -43,15 +45,23 @@ describe( 'adding blocks', () => { activeElementText = await page.evaluate( () => document.activeElement.textContent ); expect( activeElementText ).toBe( 'Second column paragraph' ); - // Arrow up in inner blocks should navigate through text fields. + // Arrow up in inner blocks should navigate through (1) column wrapper, + // (2) text fields. + await page.keyboard.press( 'ArrowUp' ); await page.keyboard.press( 'ArrowUp' ); activeElementText = await page.evaluate( () => document.activeElement.textContent ); expect( activeElementText ).toBe( 'First column paragraph' ); - // Arrow up from first text field in nested context focuses wrapper - // before escaping out. + // Arrow up from first text field in nested context focuses column and + // columns wrappers before escaping out. + let activeElementBlockType; + await page.keyboard.press( 'ArrowUp' ); + activeElementBlockType = await page.evaluate( () => ( + document.activeElement.getAttribute( 'data-type' ) + ) ); + expect( activeElementBlockType ).toBe( 'core/column' ); await page.keyboard.press( 'ArrowUp' ); - const activeElementBlockType = await page.evaluate( () => ( + activeElementBlockType = await page.evaluate( () => ( document.activeElement.getAttribute( 'data-type' ) ) ); expect( activeElementBlockType ).toBe( 'core/columns' );