@wordpress/e2e-tests 4.1.0 → 4.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/config/flaky-tests-reporter.js +1 -0
- package/config/setup-test-framework.js +3 -0
- package/package.json +6 -6
- package/specs/editor/blocks/__snapshots__/buttons.test.js.snap +4 -4
- package/specs/editor/blocks/__snapshots__/heading.test.js.snap +0 -6
- package/specs/editor/blocks/{comments-query.test.js → comments.test.js} +5 -13
- package/specs/editor/blocks/heading.test.js +7 -7
- package/specs/editor/blocks/navigation.test.js +58 -10
- package/specs/editor/blocks/table.test.js +14 -1
- package/specs/editor/fixtures/menu-items-response-fixture.json +48 -144
- package/specs/editor/plugins/iframed-inline-styles.test.js +1 -0
- package/specs/editor/plugins/nonce.test.js +6 -7
- package/specs/editor/various/__snapshots__/inserting-blocks.test.js.snap +1 -1
- package/specs/editor/various/block-switcher.test.js +3 -0
- package/specs/editor/various/datepicker.test.js +19 -7
- package/specs/editor/various/inserting-blocks.test.js +1 -1
- package/specs/editor/various/keyboard-navigable-blocks.test.js +0 -3
- package/specs/editor/various/multi-block-selection.test.js +48 -0
- package/specs/editor/various/post-visibility.test.js +1 -1
- package/specs/editor/various/scheduling.test.js +2 -2
- package/specs/editor/various/switch-to-draft.test.js +1 -1
- package/specs/editor/various/writing-flow.test.js +52 -19
- package/specs/experiments/blocks/post-comments-form.test.js +46 -0
- package/specs/editor/blocks/__snapshots__/code.test.js.snap +0 -14
- package/specs/editor/blocks/__snapshots__/html.test.js.snap +0 -8
- package/specs/editor/blocks/__snapshots__/image.test.js.snap +0 -25
- package/specs/editor/blocks/__snapshots__/preformatted.test.js.snap +0 -24
- package/specs/editor/blocks/__snapshots__/separator.test.js.snap +0 -7
- package/specs/editor/blocks/code.test.js +0 -48
- package/specs/editor/blocks/html.test.js +0 -31
- package/specs/editor/blocks/image.test.js +0 -373
- package/specs/editor/blocks/paragraph.test.js +0 -26
- package/specs/editor/blocks/preformatted.test.js +0 -62
- package/specs/editor/blocks/separator.test.js +0 -22
- package/specs/editor/plugins/image-size.test.js +0 -71
- package/specs/editor/various/block-locking.test.js +0 -120
- package/specs/editor/various/popovers.test.js +0 -27
- package/specs/site-editor/template-part.test.js +0 -346
- package/specs/site-editor/template-revert.test.js +0 -209
@@ -32,6 +32,7 @@ describe( 'Block Switcher', () => {
|
|
32
32
|
'Heading',
|
33
33
|
'Pullquote',
|
34
34
|
'Columns',
|
35
|
+
'Table of Contents',
|
35
36
|
] )
|
36
37
|
);
|
37
38
|
} );
|
@@ -57,6 +58,7 @@ describe( 'Block Switcher', () => {
|
|
57
58
|
'Paragraph',
|
58
59
|
'Pullquote',
|
59
60
|
'Heading',
|
61
|
+
'Table of Contents',
|
60
62
|
] )
|
61
63
|
);
|
62
64
|
} );
|
@@ -71,6 +73,7 @@ describe( 'Block Switcher', () => {
|
|
71
73
|
'core/group',
|
72
74
|
'core/heading',
|
73
75
|
'core/columns',
|
76
|
+
'core/table-of-contents',
|
74
77
|
].map( ( block ) => wp.blocks.unregisterBlockType( block ) );
|
75
78
|
} );
|
76
79
|
|
@@ -15,12 +15,24 @@ async function getSelectedOptionLabel( selector ) {
|
|
15
15
|
}
|
16
16
|
|
17
17
|
async function getDatePickerValues() {
|
18
|
-
const year = await getInputValue(
|
19
|
-
|
20
|
-
|
21
|
-
const
|
22
|
-
|
23
|
-
|
18
|
+
const year = await getInputValue(
|
19
|
+
'.components-datetime__time-field-year input'
|
20
|
+
);
|
21
|
+
const month = await getInputValue(
|
22
|
+
'.components-datetime__time-field-month select'
|
23
|
+
);
|
24
|
+
const monthLabel = await getSelectedOptionLabel(
|
25
|
+
'.components-datetime__time-field-month select'
|
26
|
+
);
|
27
|
+
const day = await getInputValue(
|
28
|
+
'.components-datetime__time-field-day input'
|
29
|
+
);
|
30
|
+
const hours = await getInputValue(
|
31
|
+
'.components-datetime__time-field-hours-input input'
|
32
|
+
);
|
33
|
+
const minutes = await getInputValue(
|
34
|
+
'.components-datetime__time-field-minutes-input input'
|
35
|
+
);
|
24
36
|
const amOrPm = await page.$eval(
|
25
37
|
'.components-datetime__time-field-am-pm .is-primary',
|
26
38
|
( element ) => element.innerText.toLowerCase()
|
@@ -126,7 +138,7 @@ describe.each( [ [ 'UTC-10' ], [ 'UTC' ], [ 'UTC+10' ] ] )(
|
|
126
138
|
await page.click( '.edit-post-post-schedule__toggle' );
|
127
139
|
|
128
140
|
// Clear the date.
|
129
|
-
await page.click( '.
|
141
|
+
await page.click( '.block-editor-publish-date-time-picker__reset' );
|
130
142
|
|
131
143
|
const publishingDate = await getPublishingDate();
|
132
144
|
|
@@ -299,7 +299,7 @@ describe( 'Inserting blocks', () => {
|
|
299
299
|
await page.waitForSelector( INSERTER_SEARCH_SELECTOR );
|
300
300
|
await page.focus( INSERTER_SEARCH_SELECTOR );
|
301
301
|
await pressKeyWithModifier( 'primary', 'a' );
|
302
|
-
const searchTerm = '
|
302
|
+
const searchTerm = 'Verse';
|
303
303
|
await page.keyboard.type( searchTerm );
|
304
304
|
const browseAll = await page.waitForXPath(
|
305
305
|
'//button[text()="Browse all"]'
|
@@ -26,9 +26,6 @@ const navigateToContentEditorTop = async () => {
|
|
26
26
|
};
|
27
27
|
|
28
28
|
const tabThroughParagraphBlock = async ( paragraphText ) => {
|
29
|
-
await page.keyboard.press( 'Tab' );
|
30
|
-
await expect( await getActiveLabel() ).toBe( 'Add block' );
|
31
|
-
|
32
29
|
await tabThroughBlockToolbar();
|
33
30
|
|
34
31
|
await page.keyboard.press( 'Tab' );
|
@@ -10,6 +10,7 @@ import {
|
|
10
10
|
clickBlockToolbarButton,
|
11
11
|
clickButton,
|
12
12
|
clickMenuItem,
|
13
|
+
insertBlock,
|
13
14
|
openListView,
|
14
15
|
saveDraft,
|
15
16
|
transformBlockTo,
|
@@ -975,4 +976,51 @@ describe( 'Multi-block selection', () => {
|
|
975
976
|
// Expect two blocks with "&" in between.
|
976
977
|
expect( await getEditedPostContent() ).toMatchSnapshot();
|
977
978
|
} );
|
979
|
+
describe( 'shift+click multi-selection', () => {
|
980
|
+
it( 'should multi-select block with text selection and a block without text selection', async () => {
|
981
|
+
await page.keyboard.press( 'Enter' );
|
982
|
+
await page.keyboard.type( 'hi' );
|
983
|
+
await page.keyboard.press( 'Enter' );
|
984
|
+
await insertBlock( 'Spacer' );
|
985
|
+
await page.keyboard.press( 'ArrowUp' );
|
986
|
+
|
987
|
+
const spacerBlock = await page.waitForSelector(
|
988
|
+
'.wp-block.wp-block-spacer'
|
989
|
+
);
|
990
|
+
const boundingBox = await spacerBlock.boundingBox();
|
991
|
+
const mousePosition = {
|
992
|
+
x: boundingBox.x + boundingBox.width / 2,
|
993
|
+
y: boundingBox.y + boundingBox.height / 2,
|
994
|
+
};
|
995
|
+
await page.keyboard.down( 'Shift' );
|
996
|
+
await page.mouse.click( mousePosition.x, mousePosition.y );
|
997
|
+
await page.keyboard.up( 'Shift' );
|
998
|
+
|
999
|
+
const selectedBlocks = await page.$$(
|
1000
|
+
'.wp-block.is-multi-selected'
|
1001
|
+
);
|
1002
|
+
expect( selectedBlocks.length ).toBe( 2 );
|
1003
|
+
} );
|
1004
|
+
it( 'should multi-select blocks without text selection', async () => {
|
1005
|
+
await insertBlock( 'Spacer' );
|
1006
|
+
// Get the first spacer block element.
|
1007
|
+
const spacerBlock = await page.waitForSelector(
|
1008
|
+
'.wp-block.wp-block-spacer'
|
1009
|
+
);
|
1010
|
+
const boundingBox = await spacerBlock.boundingBox();
|
1011
|
+
await page.keyboard.press( 'Enter' );
|
1012
|
+
await insertBlock( 'Spacer' );
|
1013
|
+
const mousePosition = {
|
1014
|
+
x: boundingBox.x + boundingBox.width / 2,
|
1015
|
+
y: boundingBox.y + boundingBox.height / 2,
|
1016
|
+
};
|
1017
|
+
await page.keyboard.down( 'Shift' );
|
1018
|
+
await page.mouse.click( mousePosition.x, mousePosition.y );
|
1019
|
+
await page.keyboard.up( 'Shift' );
|
1020
|
+
const selectedBlocks = await page.$$(
|
1021
|
+
'.wp-block.is-multi-selected'
|
1022
|
+
);
|
1023
|
+
expect( selectedBlocks.length ).toBe( 2 );
|
1024
|
+
} );
|
1025
|
+
} );
|
978
1026
|
} );
|
@@ -92,7 +92,7 @@ describe( 'Post visibility', () => {
|
|
92
92
|
// Set a publish date for the next month.
|
93
93
|
await page.click( '.edit-post-post-schedule__toggle' );
|
94
94
|
await page.click(
|
95
|
-
'
|
95
|
+
'*[aria-label="Move forward to switch to the next month."]'
|
96
96
|
);
|
97
97
|
await (
|
98
98
|
await page.$x(
|
@@ -58,11 +58,11 @@ describe( 'Scheduling', () => {
|
|
58
58
|
|
59
59
|
await page.click( '.edit-post-post-schedule__toggle' );
|
60
60
|
await page.click(
|
61
|
-
'
|
61
|
+
'*[aria-label="Move backward to switch to the previous month."]'
|
62
62
|
);
|
63
63
|
expect( await isDateTimeComponentFocused() ).toBe( true );
|
64
64
|
await page.click(
|
65
|
-
'
|
65
|
+
'*[aria-label="Move forward to switch to the next month."]'
|
66
66
|
);
|
67
67
|
expect( await isDateTimeComponentFocused() ).toBe( true );
|
68
68
|
} );
|
@@ -63,7 +63,7 @@ async function scheduleTestPost( postType, viewport ) {
|
|
63
63
|
// Set a publish date for the next month.
|
64
64
|
await page.click( '.edit-post-post-schedule__toggle' );
|
65
65
|
await page.click(
|
66
|
-
'
|
66
|
+
'*[aria-label="Move forward to switch to the next month."]'
|
67
67
|
);
|
68
68
|
|
69
69
|
await (
|
@@ -9,6 +9,7 @@ import {
|
|
9
9
|
pressKeyWithModifier,
|
10
10
|
insertBlock,
|
11
11
|
clickBlockToolbarButton,
|
12
|
+
openDocumentSettingsSidebar,
|
12
13
|
} from '@wordpress/e2e-test-utils';
|
13
14
|
|
14
15
|
const getActiveBlockName = async () =>
|
@@ -678,30 +679,14 @@ describe( 'Writing Flow', () => {
|
|
678
679
|
await page.keyboard.press( 'Tab' );
|
679
680
|
// Create the table.
|
680
681
|
await page.keyboard.press( 'Space' );
|
681
|
-
// Return focus after focus loss. This should be fixed.
|
682
|
-
await page.keyboard.press( 'Tab' );
|
683
682
|
// Navigate to the second cell.
|
684
683
|
await page.keyboard.press( 'ArrowRight' );
|
685
684
|
await page.keyboard.type( '2' );
|
686
685
|
// Confirm correct setup.
|
687
686
|
expect( await getEditedPostContent() ).toMatchSnapshot();
|
688
|
-
|
689
|
-
|
690
|
-
|
691
|
-
await page.evaluate( () =>
|
692
|
-
document.activeElement.getAttribute( 'aria-label' )
|
693
|
-
)
|
694
|
-
).toBe( 'Post' );
|
695
|
-
await pressKeyWithModifier( 'shift', 'Tab' );
|
696
|
-
await pressKeyWithModifier( 'shift', 'Tab' );
|
697
|
-
expect(
|
698
|
-
await page.evaluate( () =>
|
699
|
-
document.activeElement.getAttribute( 'aria-label' )
|
700
|
-
)
|
701
|
-
).toBe( 'Table' );
|
702
|
-
} );
|
703
|
-
|
704
|
-
it( 'Should unselect all blocks when hitting double escape', async () => {
|
687
|
+
} );
|
688
|
+
|
689
|
+
it( 'should unselect all blocks when hitting double escape', async () => {
|
705
690
|
// Add demo content.
|
706
691
|
await page.keyboard.press( 'Enter' );
|
707
692
|
await page.keyboard.type( 'Random Paragraph' );
|
@@ -720,4 +705,52 @@ describe( 'Writing Flow', () => {
|
|
720
705
|
activeBlockName = await getActiveBlockName();
|
721
706
|
expect( activeBlockName ).toBe( undefined );
|
722
707
|
} );
|
708
|
+
|
709
|
+
// Checks for regressions of https://github.com/WordPress/gutenberg/issues/40091.
|
710
|
+
it( 'does not deselect the block when selecting text outside the editor canvas', async () => {
|
711
|
+
await page.keyboard.press( 'Enter' );
|
712
|
+
await page.keyboard.type( 'Random Paragraph' );
|
713
|
+
await openDocumentSettingsSidebar();
|
714
|
+
const blockDescription = await page.waitForSelector(
|
715
|
+
'.block-editor-block-card__description'
|
716
|
+
);
|
717
|
+
const boundingBox = await blockDescription.boundingBox();
|
718
|
+
const startPosition = {
|
719
|
+
x: boundingBox.x + 10,
|
720
|
+
y: boundingBox.y + 8,
|
721
|
+
};
|
722
|
+
const endPosition = {
|
723
|
+
x: startPosition.x + 50,
|
724
|
+
y: startPosition.y,
|
725
|
+
};
|
726
|
+
|
727
|
+
await page.mouse.move( startPosition.x, startPosition.y );
|
728
|
+
await page.mouse.down();
|
729
|
+
await page.mouse.move( endPosition.x, endPosition.y );
|
730
|
+
await page.mouse.up();
|
731
|
+
|
732
|
+
const selectedParagraph = await page.waitForSelector(
|
733
|
+
'.wp-block-paragraph.is-selected'
|
734
|
+
);
|
735
|
+
expect( selectedParagraph ).toBeDefined();
|
736
|
+
} );
|
737
|
+
it( 'should prevent browser default formatting on multi selection', async () => {
|
738
|
+
await page.keyboard.press( 'Enter' );
|
739
|
+
await page.keyboard.type( 'first' );
|
740
|
+
await page.keyboard.press( 'Enter' );
|
741
|
+
await page.keyboard.type( 'second' );
|
742
|
+
|
743
|
+
// Multi select both paragraphs.
|
744
|
+
await pressKeyTimes( 'ArrowLeft', 2 );
|
745
|
+
await page.keyboard.down( 'Shift' );
|
746
|
+
await pressKeyTimes( 'ArrowLeft', 2 );
|
747
|
+
await page.keyboard.press( 'ArrowUp' );
|
748
|
+
await page.keyboard.up( 'Shift' );
|
749
|
+
await pressKeyWithModifier( 'primary', 'b' );
|
750
|
+
const paragraphs = await page.$$eval(
|
751
|
+
'[data-type="core/paragraph"]',
|
752
|
+
( nodes ) => Array.from( nodes ).map( ( node ) => node.innerHTML )
|
753
|
+
);
|
754
|
+
expect( paragraphs ).toEqual( [ 'first', 'second' ] );
|
755
|
+
} );
|
723
756
|
} );
|
@@ -0,0 +1,46 @@
|
|
1
|
+
/**
|
2
|
+
* WordPress dependencies
|
3
|
+
*/
|
4
|
+
import {
|
5
|
+
insertBlock,
|
6
|
+
activateTheme,
|
7
|
+
setOption,
|
8
|
+
visitSiteEditor,
|
9
|
+
openSiteEditorNavigationPanel,
|
10
|
+
navigateSiteEditorBackToRoot,
|
11
|
+
deleteAllTemplates,
|
12
|
+
canvas,
|
13
|
+
} from '@wordpress/e2e-test-utils';
|
14
|
+
|
15
|
+
describe( 'Post Comments Form', () => {
|
16
|
+
beforeAll( async () => {
|
17
|
+
await activateTheme( 'emptytheme' );
|
18
|
+
await deleteAllTemplates( 'wp_template' );
|
19
|
+
} );
|
20
|
+
|
21
|
+
describe( 'placeholder', () => {
|
22
|
+
it( 'displays in site editor even when comments are closed by default', async () => {
|
23
|
+
await setOption( 'default_comment_status', 'closed' );
|
24
|
+
|
25
|
+
// Navigate to "Singular" post template
|
26
|
+
await visitSiteEditor();
|
27
|
+
await openSiteEditorNavigationPanel();
|
28
|
+
await navigateSiteEditorBackToRoot();
|
29
|
+
await expect( page ).toClick(
|
30
|
+
'.components-navigation__item-title',
|
31
|
+
{ text: /templates/i }
|
32
|
+
);
|
33
|
+
await expect( page ).toClick( '.components-heading > a', {
|
34
|
+
text: /singular/i,
|
35
|
+
} );
|
36
|
+
|
37
|
+
// Insert post comments form
|
38
|
+
await insertBlock( 'Post Comments Form' );
|
39
|
+
|
40
|
+
// Ensure the placeholder is there
|
41
|
+
await expect( canvas() ).toMatchElement(
|
42
|
+
'.wp-block-post-comments-form .comment-form'
|
43
|
+
);
|
44
|
+
} );
|
45
|
+
} );
|
46
|
+
} );
|
@@ -1,14 +0,0 @@
|
|
1
|
-
// Jest Snapshot v1, https://goo.gl/fbAQLP
|
2
|
-
|
3
|
-
exports[`Code can be created by three backticks and enter 1`] = `
|
4
|
-
"<!-- wp:code -->
|
5
|
-
<pre class=\\"wp-block-code\\"><code><?php</code></pre>
|
6
|
-
<!-- /wp:code -->"
|
7
|
-
`;
|
8
|
-
|
9
|
-
exports[`Code should paste plain text 1`] = `
|
10
|
-
"<!-- wp:code -->
|
11
|
-
<pre class=\\"wp-block-code\\"><code><img />
|
12
|
-
<br></code></pre>
|
13
|
-
<!-- /wp:code -->"
|
14
|
-
`;
|
@@ -1,25 +0,0 @@
|
|
1
|
-
// Jest Snapshot v1, https://goo.gl/fbAQLP
|
2
|
-
|
3
|
-
exports[`Image allows changing aspect ratio using the crop tools 1`] = `"data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/4gIoSUNDX1BST0ZJTEUAAQEAAAIYAAAAAAQwAABtbnRyUkdCIFhZWiAAAAAAAAAAAAAAAABhY3NwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAA9tYAAQAAAADTLQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAlkZXNjAAAA8AAAAHRyWFlaAAABZAAAABRnWFlaAAABeAAAABRiWFlaAAABjAAAABRyVFJDAAABoAAAAChnVFJDAAABoAAAAChiVFJDAAABoAAAACh3dHB0AAAByAAAABRjcHJ0AAAB3AAAADxtbHVjAAAAAAAAAAEAAAAMZW5VUwAAAFgAAAAcAHMAUgBHAEIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhZWiAAAAAAAABvogAAOPUAAAOQWFlaIAAAAAAAAGKZAAC3hQAAGNpYWVogAAAAAAAAJKAAAA+EAAC2z3BhcmEAAAAAAAQAAAACZmYAAPKnAAANWQAAE9AAAApbAAAAAAAAAABYWVogAAAAAAAA9tYAAQAAAADTLW1sdWMAAAAAAAAAAQAAAAxlblVTAAAAIAAAABwARwBvAG8AZwBsAGUAIABJAG4AYwAuACAAMgAwADEANv/bAEMAAwICAgICAwICAgMDAwMEBgQEBAQECAYGBQYJCAoKCQgJCQoMDwwKCw4LCQkNEQ0ODxAQERAKDBITEhATDxAQEP/bAEMBAwMDBAMECAQECBALCQsQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEP/AABEIAAoACgMBIgACEQEDEQH/xAAVAAEBAAAAAAAAAAAAAAAAAAAJB//EACAQAAADCQEAAAAAAAAAAAAAAAAEBQEDBgk1OHR3srX/xAAUAQEAAAAAAAAAAAAAAAAAAAAA/8QAFBEBAAAAAAAAAAAAAAAAAAAAAP/aAAwDAQACEQMRAD8AlMlS6eKdfnvRTgrytVTuQ86aChkqXTxTr896KcFeVqqdyHnTQH//2Q=="`;
|
4
|
-
|
5
|
-
exports[`Image allows changing aspect ratio using the crop tools 2`] = `"data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/4gIoSUNDX1BST0ZJTEUAAQEAAAIYAAAAAAQwAABtbnRyUkdCIFhZWiAAAAAAAAAAAAAAAABhY3NwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAA9tYAAQAAAADTLQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAlkZXNjAAAA8AAAAHRyWFlaAAABZAAAABRnWFlaAAABeAAAABRiWFlaAAABjAAAABRyVFJDAAABoAAAAChnVFJDAAABoAAAAChiVFJDAAABoAAAACh3dHB0AAAByAAAABRjcHJ0AAAB3AAAADxtbHVjAAAAAAAAAAEAAAAMZW5VUwAAAFgAAAAcAHMAUgBHAEIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhZWiAAAAAAAABvogAAOPUAAAOQWFlaIAAAAAAAAGKZAAC3hQAAGNpYWVogAAAAAAAAJKAAAA+EAAC2z3BhcmEAAAAAAAQAAAACZmYAAPKnAAANWQAAE9AAAApbAAAAAAAAAABYWVogAAAAAAAA9tYAAQAAAADTLW1sdWMAAAAAAAAAAQAAAAxlblVTAAAAIAAAABwARwBvAG8AZwBsAGUAIABJAG4AYwAuACAAMgAwADEANv/bAEMAAwICAgICAwICAgMDAwMEBgQEBAQECAYGBQYJCAoKCQgJCQoMDwwKCw4LCQkNEQ0ODxAQERAKDBITEhATDxAQEP/bAEMBAwMDBAMECAQECBALCQsQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEP/AABEIAAYACgMBIgACEQEDEQH/xAAWAAEBAQAAAAAAAAAAAAAAAAAABwn/xAAgEAABAgUFAAAAAAAAAAAAAAAABAUBAwYJNTh0d7K1/8QAFAEBAAAAAAAAAAAAAAAAAAAAAP/EABQRAQAAAAAAAAAAAAAAAAAAAAD/2gAMAwEAAhEDEQA/AJTZU1T1Tx+u9FuNXnbKrdxM7RAA/9k="`;
|
6
|
-
|
7
|
-
exports[`Image allows rotating using the crop tools 1`] = `"data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/4gIoSUNDX1BST0ZJTEUAAQEAAAIYAAAAAAQwAABtbnRyUkdCIFhZWiAAAAAAAAAAAAAAAABhY3NwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAA9tYAAQAAAADTLQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAlkZXNjAAAA8AAAAHRyWFlaAAABZAAAABRnWFlaAAABeAAAABRiWFlaAAABjAAAABRyVFJDAAABoAAAAChnVFJDAAABoAAAAChiVFJDAAABoAAAACh3dHB0AAAByAAAABRjcHJ0AAAB3AAAADxtbHVjAAAAAAAAAAEAAAAMZW5VUwAAAFgAAAAcAHMAUgBHAEIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhZWiAAAAAAAABvogAAOPUAAAOQWFlaIAAAAAAAAGKZAAC3hQAAGNpYWVogAAAAAAAAJKAAAA+EAAC2z3BhcmEAAAAAAAQAAAACZmYAAPKnAAANWQAAE9AAAApbAAAAAAAAAABYWVogAAAAAAAA9tYAAQAAAADTLW1sdWMAAAAAAAAAAQAAAAxlblVTAAAAIAAAABwARwBvAG8AZwBsAGUAIABJAG4AYwAuACAAMgAwADEANv/bAEMAAwICAgICAwICAgMDAwMEBgQEBAQECAYGBQYJCAoKCQgJCQoMDwwKCw4LCQkNEQ0ODxAQERAKDBITEhATDxAQEP/bAEMBAwMDBAMECAQECBALCQsQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEP/AABEIAAoACgMBIgACEQEDEQH/xAAVAAEBAAAAAAAAAAAAAAAAAAAJB//EACAQAAADCQEAAAAAAAAAAAAAAAAEBQEDBgk1OHR3srX/xAAUAQEAAAAAAAAAAAAAAAAAAAAA/8QAFBEBAAAAAAAAAAAAAAAAAAAAAP/aAAwDAQACEQMRAD8AlMlS6eKdfnvRTgrytVTuQ86aChkqXTxTr896KcFeVqqdyHnTQH//2Q=="`;
|
8
|
-
|
9
|
-
exports[`Image allows rotating using the crop tools 2`] = `"data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/4gIoSUNDX1BST0ZJTEUAAQEAAAIYAAAAAAQwAABtbnRyUkdCIFhZWiAAAAAAAAAAAAAAAABhY3NwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAA9tYAAQAAAADTLQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAlkZXNjAAAA8AAAAHRyWFlaAAABZAAAABRnWFlaAAABeAAAABRiWFlaAAABjAAAABRyVFJDAAABoAAAAChnVFJDAAABoAAAAChiVFJDAAABoAAAACh3dHB0AAAByAAAABRjcHJ0AAAB3AAAADxtbHVjAAAAAAAAAAEAAAAMZW5VUwAAAFgAAAAcAHMAUgBHAEIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhZWiAAAAAAAABvogAAOPUAAAOQWFlaIAAAAAAAAGKZAAC3hQAAGNpYWVogAAAAAAAAJKAAAA+EAAC2z3BhcmEAAAAAAAQAAAACZmYAAPKnAAANWQAAE9AAAApbAAAAAAAAAABYWVogAAAAAAAA9tYAAQAAAADTLW1sdWMAAAAAAAAAAQAAAAxlblVTAAAAIAAAABwARwBvAG8AZwBsAGUAIABJAG4AYwAuACAAMgAwADEANv/bAEMAAwICAgICAwICAgMDAwMEBgQEBAQECAYGBQYJCAoKCQgJCQoMDwwKCw4LCQkNEQ0ODxAQERAKDBITEhATDxAQEP/bAEMBAwMDBAMECAQECBALCQsQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEP/AABEIAAoACgMBIgACEQEDEQH/xAAWAAEBAQAAAAAAAAAAAAAAAAAABwn/xAAhEAAAAgsBAAAAAAAAAAAAAAAABQIEBwgVGVVWk5XR1P/EABQBAQAAAAAAAAAAAAAAAAAAAAD/xAAUEQEAAAAAAAAAAAAAAAAAAAAA/9oADAMBAAIRAxEAPwCUyVHp7+ZVtTHwhJUenv5lW1MfCNXosa1NbzJdCLGtTW8yXQH/2Q=="`;
|
10
|
-
|
11
|
-
exports[`Image allows zooming using the crop tools 1`] = `"data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/4gIoSUNDX1BST0ZJTEUAAQEAAAIYAAAAAAQwAABtbnRyUkdCIFhZWiAAAAAAAAAAAAAAAABhY3NwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAA9tYAAQAAAADTLQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAlkZXNjAAAA8AAAAHRyWFlaAAABZAAAABRnWFlaAAABeAAAABRiWFlaAAABjAAAABRyVFJDAAABoAAAAChnVFJDAAABoAAAAChiVFJDAAABoAAAACh3dHB0AAAByAAAABRjcHJ0AAAB3AAAADxtbHVjAAAAAAAAAAEAAAAMZW5VUwAAAFgAAAAcAHMAUgBHAEIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhZWiAAAAAAAABvogAAOPUAAAOQWFlaIAAAAAAAAGKZAAC3hQAAGNpYWVogAAAAAAAAJKAAAA+EAAC2z3BhcmEAAAAAAAQAAAACZmYAAPKnAAANWQAAE9AAAApbAAAAAAAAAABYWVogAAAAAAAA9tYAAQAAAADTLW1sdWMAAAAAAAAAAQAAAAxlblVTAAAAIAAAABwARwBvAG8AZwBsAGUAIABJAG4AYwAuACAAMgAwADEANv/bAEMAAwICAgICAwICAgMDAwMEBgQEBAQECAYGBQYJCAoKCQgJCQoMDwwKCw4LCQkNEQ0ODxAQERAKDBITEhATDxAQEP/bAEMBAwMDBAMECAQECBALCQsQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEP/AABEIAAoACgMBIgACEQEDEQH/xAAVAAEBAAAAAAAAAAAAAAAAAAAJB//EACAQAAADCQEAAAAAAAAAAAAAAAAEBQEDBgk1OHR3srX/xAAUAQEAAAAAAAAAAAAAAAAAAAAA/8QAFBEBAAAAAAAAAAAAAAAAAAAAAP/aAAwDAQACEQMRAD8AlMlS6eKdfnvRTgrytVTuQ86aChkqXTxTr896KcFeVqqdyHnTQH//2Q=="`;
|
12
|
-
|
13
|
-
exports[`Image allows zooming using the crop tools 2`] = `"data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/4gIoSUNDX1BST0ZJTEUAAQEAAAIYAAAAAAQwAABtbnRyUkdCIFhZWiAAAAAAAAAAAAAAAABhY3NwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAA9tYAAQAAAADTLQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAlkZXNjAAAA8AAAAHRyWFlaAAABZAAAABRnWFlaAAABeAAAABRiWFlaAAABjAAAABRyVFJDAAABoAAAAChnVFJDAAABoAAAAChiVFJDAAABoAAAACh3dHB0AAAByAAAABRjcHJ0AAAB3AAAADxtbHVjAAAAAAAAAAEAAAAMZW5VUwAAAFgAAAAcAHMAUgBHAEIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhZWiAAAAAAAABvogAAOPUAAAOQWFlaIAAAAAAAAGKZAAC3hQAAGNpYWVogAAAAAAAAJKAAAA+EAAC2z3BhcmEAAAAAAAQAAAACZmYAAPKnAAANWQAAE9AAAApbAAAAAAAAAABYWVogAAAAAAAA9tYAAQAAAADTLW1sdWMAAAAAAAAAAQAAAAxlblVTAAAAIAAAABwARwBvAG8AZwBsAGUAIABJAG4AYwAuACAAMgAwADEANv/bAEMAAwICAgICAwICAgMDAwMEBgQEBAQECAYGBQYJCAoKCQgJCQoMDwwKCw4LCQkNEQ0ODxAQERAKDBITEhATDxAQEP/bAEMBAwMDBAMECAQECBALCQsQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEP/AABEIAAUABQMBIgACEQEDEQH/xAAVAAEBAAAAAAAAAAAAAAAAAAAACP/EABoQAQABBQAAAAAAAAAAAAAAAAAEBwk4hbX/xAAUAQEAAAAAAAAAAAAAAAAAAAAA/8QAFBEBAAAAAAAAAAAAAAAAAAAAAP/aAAwDAQACEQMRAD8Aqm1xgnTLddiaAD//2Q=="`;
|
14
|
-
|
15
|
-
exports[`Image should drag and drop files into media placeholder 1`] = `
|
16
|
-
"<!-- wp:image -->
|
17
|
-
<figure class=\\"wp-block-image\\"><img alt=\\"\\"/></figure>
|
18
|
-
<!-- /wp:image -->"
|
19
|
-
`;
|
20
|
-
|
21
|
-
exports[`Image should undo without broken temporary state 1`] = `
|
22
|
-
"<!-- wp:image -->
|
23
|
-
<figure class=\\"wp-block-image\\"><img alt=\\"\\"/></figure>
|
24
|
-
<!-- /wp:image -->"
|
25
|
-
`;
|
@@ -1,24 +0,0 @@
|
|
1
|
-
// Jest Snapshot v1, https://goo.gl/fbAQLP
|
2
|
-
|
3
|
-
exports[`Preformatted should preserve character newlines 1`] = `
|
4
|
-
"<!-- wp:html -->
|
5
|
-
<pre>1
|
6
|
-
2</pre>
|
7
|
-
<!-- /wp:html -->"
|
8
|
-
`;
|
9
|
-
|
10
|
-
exports[`Preformatted should preserve character newlines 2`] = `
|
11
|
-
"<!-- wp:preformatted -->
|
12
|
-
<pre class=\\"wp-block-preformatted\\">0
|
13
|
-
1
|
14
|
-
2</pre>
|
15
|
-
<!-- /wp:preformatted -->"
|
16
|
-
`;
|
17
|
-
|
18
|
-
exports[`Preformatted should preserve white space when merging 1`] = `
|
19
|
-
"<!-- wp:preformatted -->
|
20
|
-
<pre class=\\"wp-block-preformatted\\">1
|
21
|
-
2
|
22
|
-
3</pre>
|
23
|
-
<!-- /wp:preformatted -->"
|
24
|
-
`;
|
@@ -1,48 +0,0 @@
|
|
1
|
-
/**
|
2
|
-
* WordPress dependencies
|
3
|
-
*/
|
4
|
-
import {
|
5
|
-
insertBlock,
|
6
|
-
clickBlockAppender,
|
7
|
-
getEditedPostContent,
|
8
|
-
createNewPost,
|
9
|
-
setClipboardData,
|
10
|
-
pressKeyWithModifier,
|
11
|
-
} from '@wordpress/e2e-test-utils';
|
12
|
-
|
13
|
-
describe( 'Code', () => {
|
14
|
-
beforeEach( async () => {
|
15
|
-
await createNewPost();
|
16
|
-
} );
|
17
|
-
|
18
|
-
it( 'can be created by three backticks and enter', async () => {
|
19
|
-
await clickBlockAppender();
|
20
|
-
await page.keyboard.type( '```' );
|
21
|
-
await page.keyboard.press( 'Enter' );
|
22
|
-
await page.keyboard.type( '<?php' );
|
23
|
-
|
24
|
-
expect( await getEditedPostContent() ).toMatchSnapshot();
|
25
|
-
} );
|
26
|
-
|
27
|
-
it( 'should delete block when backspace in an empty code', async () => {
|
28
|
-
await insertBlock( 'Code' );
|
29
|
-
await page.keyboard.type( 'a' );
|
30
|
-
|
31
|
-
await page.keyboard.press( 'Backspace' );
|
32
|
-
await page.keyboard.press( 'Backspace' );
|
33
|
-
|
34
|
-
// Expect code block to be deleted.
|
35
|
-
expect( await getEditedPostContent() ).toBe( '' );
|
36
|
-
} );
|
37
|
-
|
38
|
-
it( 'should paste plain text', async () => {
|
39
|
-
await insertBlock( 'Code' );
|
40
|
-
|
41
|
-
// Test to see if HTML and white space is kept.
|
42
|
-
await setClipboardData( { plainText: '<img />\n\t<br>' } );
|
43
|
-
|
44
|
-
await pressKeyWithModifier( 'primary', 'v' );
|
45
|
-
|
46
|
-
expect( await getEditedPostContent() ).toMatchSnapshot();
|
47
|
-
} );
|
48
|
-
} );
|
@@ -1,31 +0,0 @@
|
|
1
|
-
/**
|
2
|
-
* WordPress dependencies
|
3
|
-
*/
|
4
|
-
import {
|
5
|
-
clickBlockAppender,
|
6
|
-
getEditedPostContent,
|
7
|
-
createNewPost,
|
8
|
-
} from '@wordpress/e2e-test-utils';
|
9
|
-
|
10
|
-
describe( 'HTML block', () => {
|
11
|
-
beforeEach( async () => {
|
12
|
-
await createNewPost();
|
13
|
-
} );
|
14
|
-
|
15
|
-
it( 'can be created by typing "/html"', async () => {
|
16
|
-
// Create a Custom HTML block with the slash shortcut.
|
17
|
-
await clickBlockAppender();
|
18
|
-
await page.keyboard.type( '/html' );
|
19
|
-
await page.waitForXPath(
|
20
|
-
`//*[contains(@class, "components-autocomplete__result") and contains(@class, "is-selected") and contains(text(), 'Custom HTML')]`
|
21
|
-
);
|
22
|
-
await page.keyboard.press( 'Enter' );
|
23
|
-
await page.keyboard.type( '<p>Pythagorean theorem: ' );
|
24
|
-
await page.keyboard.press( 'Enter' );
|
25
|
-
await page.keyboard.type(
|
26
|
-
'<var>a</var><sup>2</sup> + <var>b</var><sup>2</sup> = <var>c</var><sup>2</sup> </p>'
|
27
|
-
);
|
28
|
-
|
29
|
-
expect( await getEditedPostContent() ).toMatchSnapshot();
|
30
|
-
} );
|
31
|
-
} );
|