@wordpress/e2e-tests 7.24.0 → 7.25.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/CHANGELOG.md +2 -0
- package/package.json +9 -9
- package/plugins/interactive-blocks/deferred-store/block.json +15 -0
- package/plugins/interactive-blocks/deferred-store/render.php +15 -0
- package/plugins/interactive-blocks/deferred-store/view.asset.php +1 -0
- package/plugins/interactive-blocks/deferred-store/view.js +20 -0
- package/plugins/interactive-blocks/directive-bind/block.json +1 -1
- package/plugins/interactive-blocks/directive-bind/render.php +0 -2
- package/plugins/interactive-blocks/directive-bind/view.asset.php +1 -0
- package/plugins/interactive-blocks/directive-class/block.json +1 -1
- package/plugins/interactive-blocks/directive-class/render.php +0 -2
- package/plugins/interactive-blocks/directive-class/view.asset.php +1 -0
- package/plugins/interactive-blocks/directive-context/block.json +1 -1
- package/plugins/interactive-blocks/directive-context/render.php +0 -2
- package/plugins/interactive-blocks/directive-context/view.asset.php +9 -0
- package/plugins/interactive-blocks/directive-each/block.json +1 -1
- package/plugins/interactive-blocks/directive-each/render.php +0 -2
- package/plugins/interactive-blocks/directive-each/view.asset.php +9 -0
- package/plugins/interactive-blocks/directive-init/block.json +1 -1
- package/plugins/interactive-blocks/directive-init/render.php +0 -2
- package/plugins/interactive-blocks/directive-init/view.asset.php +1 -0
- package/plugins/interactive-blocks/directive-key/block.json +1 -1
- package/plugins/interactive-blocks/directive-key/render.php +0 -2
- package/plugins/interactive-blocks/directive-key/view.asset.php +9 -0
- package/plugins/interactive-blocks/directive-on/block.json +1 -1
- package/plugins/interactive-blocks/directive-on/render.php +0 -2
- package/plugins/interactive-blocks/directive-on/view.asset.php +1 -0
- package/plugins/interactive-blocks/directive-on-document/block.json +1 -1
- package/plugins/interactive-blocks/directive-on-document/render.php +0 -2
- package/plugins/interactive-blocks/directive-on-document/view.asset.php +1 -0
- package/plugins/interactive-blocks/directive-on-window/block.json +1 -1
- package/plugins/interactive-blocks/directive-on-window/render.php +0 -2
- package/plugins/interactive-blocks/directive-on-window/view.asset.php +1 -0
- package/plugins/interactive-blocks/directive-priorities/block.json +1 -1
- package/plugins/interactive-blocks/directive-priorities/render.php +0 -2
- package/plugins/interactive-blocks/directive-priorities/view.asset.php +1 -0
- package/plugins/interactive-blocks/directive-run/block.json +1 -1
- package/plugins/interactive-blocks/directive-run/render.php +0 -2
- package/plugins/interactive-blocks/directive-run/view.asset.php +9 -0
- package/plugins/interactive-blocks/directive-style/block.json +1 -1
- package/plugins/interactive-blocks/directive-style/render.php +0 -2
- package/plugins/interactive-blocks/directive-style/view.asset.php +1 -0
- package/plugins/interactive-blocks/directive-text/block.json +1 -1
- package/plugins/interactive-blocks/directive-text/render.php +0 -2
- package/plugins/interactive-blocks/directive-text/view.asset.php +1 -0
- package/plugins/interactive-blocks/directive-watch/block.json +1 -1
- package/plugins/interactive-blocks/directive-watch/render.php +0 -2
- package/plugins/interactive-blocks/directive-watch/view.asset.php +1 -0
- package/plugins/interactive-blocks/generator-scope/block.json +15 -0
- package/plugins/interactive-blocks/generator-scope/render.php +16 -0
- package/plugins/interactive-blocks/generator-scope/view.asset.php +1 -0
- package/plugins/interactive-blocks/generator-scope/view.js +23 -0
- package/plugins/interactive-blocks/negation-operator/block.json +1 -1
- package/plugins/interactive-blocks/negation-operator/render.php +0 -2
- package/plugins/interactive-blocks/negation-operator/view.asset.php +1 -0
- package/plugins/interactive-blocks/router-navigate/block.json +1 -1
- package/plugins/interactive-blocks/router-navigate/render.php +0 -2
- package/plugins/interactive-blocks/router-navigate/view.asset.php +9 -0
- package/plugins/interactive-blocks/router-regions/block.json +1 -1
- package/plugins/interactive-blocks/router-regions/render.php +0 -2
- package/plugins/interactive-blocks/router-regions/view.asset.php +9 -0
- package/plugins/interactive-blocks/store/block.json +1 -1
- package/plugins/interactive-blocks/store/render.php +2 -3
- package/plugins/interactive-blocks/store/view.asset.php +1 -0
- package/plugins/interactive-blocks/store/view.js +7 -4
- package/plugins/interactive-blocks/store-tag/block.json +1 -1
- package/plugins/interactive-blocks/store-tag/render.php +0 -2
- package/plugins/interactive-blocks/store-tag/view.asset.php +1 -0
- package/plugins/interactive-blocks/tovdom/block.json +1 -1
- package/plugins/interactive-blocks/tovdom/render.php +0 -2
- package/plugins/interactive-blocks/tovdom/view.asset.php +1 -0
- package/plugins/interactive-blocks/tovdom-islands/block.json +1 -1
- package/plugins/interactive-blocks/tovdom-islands/render.php +0 -2
- package/plugins/interactive-blocks/tovdom-islands/view.asset.php +1 -0
- package/plugins/interactive-blocks/with-scope/block.json +1 -1
- package/plugins/interactive-blocks/with-scope/render.php +0 -2
- package/plugins/interactive-blocks/with-scope/view.asset.php +1 -0
- package/plugins/interactive-blocks.php +4 -21
package/CHANGELOG.md
CHANGED
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@wordpress/e2e-tests",
|
3
|
-
"version": "7.
|
3
|
+
"version": "7.25.0",
|
4
4
|
"description": "End-To-End (E2E) tests for WordPress.",
|
5
5
|
"author": "The WordPress Contributors",
|
6
6
|
"license": "GPL-2.0-or-later",
|
@@ -23,13 +23,13 @@
|
|
23
23
|
"node": ">=14"
|
24
24
|
},
|
25
25
|
"dependencies": {
|
26
|
-
"@wordpress/e2e-test-utils": "^10.
|
27
|
-
"@wordpress/interactivity": "^5.
|
28
|
-
"@wordpress/interactivity-router": "^1.
|
29
|
-
"@wordpress/jest-console": "^7.
|
30
|
-
"@wordpress/jest-puppeteer-axe": "^6.
|
31
|
-
"@wordpress/scripts": "^27.
|
32
|
-
"@wordpress/url": "^3.
|
26
|
+
"@wordpress/e2e-test-utils": "^10.25.0",
|
27
|
+
"@wordpress/interactivity": "^5.3.0",
|
28
|
+
"@wordpress/interactivity-router": "^1.4.0",
|
29
|
+
"@wordpress/jest-console": "^7.25.0",
|
30
|
+
"@wordpress/jest-puppeteer-axe": "^6.25.0",
|
31
|
+
"@wordpress/scripts": "^27.5.0",
|
32
|
+
"@wordpress/url": "^3.55.0",
|
33
33
|
"chalk": "^4.0.0",
|
34
34
|
"expect-puppeteer": "^4.4.0",
|
35
35
|
"filenamify": "^4.2.0",
|
@@ -46,5 +46,5 @@
|
|
46
46
|
"publishConfig": {
|
47
47
|
"access": "public"
|
48
48
|
},
|
49
|
-
"gitHead": "
|
49
|
+
"gitHead": "ffc07735d0abfb3f69e91d48f25b7fe8d1ef92d2"
|
50
50
|
}
|
@@ -0,0 +1,15 @@
|
|
1
|
+
{
|
2
|
+
"$schema": "https://schemas.wp.org/trunk/block.json",
|
3
|
+
"apiVersion": 2,
|
4
|
+
"name": "test/deferred-store",
|
5
|
+
"title": "E2E Interactivity tests - deferred store",
|
6
|
+
"category": "text",
|
7
|
+
"icon": "heart",
|
8
|
+
"description": "",
|
9
|
+
"supports": {
|
10
|
+
"interactivity": true
|
11
|
+
},
|
12
|
+
"textdomain": "e2e-interactivity",
|
13
|
+
"viewScriptModule": "file:./view.js",
|
14
|
+
"render": "file:./render.php"
|
15
|
+
}
|
@@ -0,0 +1,15 @@
|
|
1
|
+
<?php
|
2
|
+
/**
|
3
|
+
* HTML for testing scope restoration with generators.
|
4
|
+
*
|
5
|
+
* @package gutenberg-test-interactive-blocks
|
6
|
+
*/
|
7
|
+
?>
|
8
|
+
|
9
|
+
<div
|
10
|
+
data-wp-interactive="test/deferred-store"
|
11
|
+
<?php echo wp_interactivity_data_wp_context( array( 'text' => '!dlrow ,olleH' ) ); ?>
|
12
|
+
>
|
13
|
+
<span data-wp-text="state.reversedText" data-testid="result"></span>
|
14
|
+
<span data-wp-text="state.reversedTextGetter" data-testid="result-getter"></span>
|
15
|
+
</div>
|
@@ -0,0 +1 @@
|
|
1
|
+
<?php return array( 'dependencies' => array( '@wordpress/interactivity' ) );
|
@@ -0,0 +1,20 @@
|
|
1
|
+
/**
|
2
|
+
* WordPress dependencies
|
3
|
+
*/
|
4
|
+
import { store, getContext } from '@wordpress/interactivity';
|
5
|
+
|
6
|
+
document.addEventListener( 'DOMContentLoaded', () => {
|
7
|
+
setTimeout( () => {
|
8
|
+
store( 'test/deferred-store', {
|
9
|
+
state: {
|
10
|
+
reversedText() {
|
11
|
+
return [ ...getContext().text ].reverse().join( '' );
|
12
|
+
},
|
13
|
+
|
14
|
+
get reversedTextGetter() {
|
15
|
+
return [ ...getContext().text ].reverse().join( '' );
|
16
|
+
},
|
17
|
+
},
|
18
|
+
} );
|
19
|
+
}, 50 );
|
20
|
+
} );
|
@@ -0,0 +1 @@
|
|
1
|
+
<?php return array( 'dependencies' => array( '@wordpress/interactivity' ) );
|
@@ -0,0 +1 @@
|
|
1
|
+
<?php return array( 'dependencies' => array( '@wordpress/interactivity' ) );
|
@@ -0,0 +1 @@
|
|
1
|
+
<?php return array( 'dependencies' => array( '@wordpress/interactivity' ) );
|
@@ -0,0 +1 @@
|
|
1
|
+
<?php return array( 'dependencies' => array( '@wordpress/interactivity' ) );
|
@@ -0,0 +1 @@
|
|
1
|
+
<?php return array( 'dependencies' => array( '@wordpress/interactivity' ) );
|
@@ -0,0 +1 @@
|
|
1
|
+
<?php return array( 'dependencies' => array( '@wordpress/interactivity' ) );
|
@@ -0,0 +1 @@
|
|
1
|
+
<?php return array( 'dependencies' => array( '@wordpress/interactivity' ) );
|
@@ -0,0 +1 @@
|
|
1
|
+
<?php return array( 'dependencies' => array( '@wordpress/interactivity' ) );
|
@@ -0,0 +1 @@
|
|
1
|
+
<?php return array( 'dependencies' => array( '@wordpress/interactivity' ) );
|
@@ -0,0 +1 @@
|
|
1
|
+
<?php return array( 'dependencies' => array( '@wordpress/interactivity' ) );
|
@@ -0,0 +1,15 @@
|
|
1
|
+
{
|
2
|
+
"$schema": "https://schemas.wp.org/trunk/block.json",
|
3
|
+
"apiVersion": 2,
|
4
|
+
"name": "test/generator-scope",
|
5
|
+
"title": "E2E Interactivity tests - generator scope",
|
6
|
+
"category": "text",
|
7
|
+
"icon": "heart",
|
8
|
+
"description": "",
|
9
|
+
"supports": {
|
10
|
+
"interactivity": true
|
11
|
+
},
|
12
|
+
"textdomain": "e2e-interactivity",
|
13
|
+
"viewScriptModule": "file:./view.js",
|
14
|
+
"render": "file:./render.php"
|
15
|
+
}
|
@@ -0,0 +1,16 @@
|
|
1
|
+
<?php
|
2
|
+
/**
|
3
|
+
* HTML for testing scope restoration with generators.
|
4
|
+
*
|
5
|
+
* @package gutenberg-test-interactive-blocks
|
6
|
+
*/
|
7
|
+
?>
|
8
|
+
|
9
|
+
<div
|
10
|
+
data-wp-interactive="test/generator-scope"
|
11
|
+
<?php echo wp_interactivity_data_wp_context( array( 'result' => '' ) ); ?>
|
12
|
+
>
|
13
|
+
<input readonly data-wp-bind--value="context.result" data-testid="result" />
|
14
|
+
<button type="button" data-wp-on--click="callbacks.resolve" data-testid="resolve">Async resolve</button>
|
15
|
+
<button type="button" data-wp-on--click="callbacks.reject" data-testid="reject">Async reject</button>
|
16
|
+
</div>
|
@@ -0,0 +1 @@
|
|
1
|
+
<?php return array( 'dependencies' => array( '@wordpress/interactivity' ) );
|
@@ -0,0 +1,23 @@
|
|
1
|
+
/**
|
2
|
+
* WordPress dependencies
|
3
|
+
*/
|
4
|
+
import { store, getContext } from '@wordpress/interactivity';
|
5
|
+
|
6
|
+
store( 'test/generator-scope', {
|
7
|
+
callbacks: {
|
8
|
+
*resolve() {
|
9
|
+
try {
|
10
|
+
getContext().result = yield Promise.resolve( 'ok' );
|
11
|
+
} catch ( err ) {
|
12
|
+
getContext().result = err.toString();
|
13
|
+
}
|
14
|
+
},
|
15
|
+
*reject() {
|
16
|
+
try {
|
17
|
+
getContext().result = yield Promise.reject( new Error( '😘' ) );
|
18
|
+
} catch ( err ) {
|
19
|
+
getContext().result = err.toString();
|
20
|
+
}
|
21
|
+
},
|
22
|
+
},
|
23
|
+
} );
|
@@ -0,0 +1 @@
|
|
1
|
+
<?php return array( 'dependencies' => array( '@wordpress/interactivity' ) );
|
@@ -1,14 +1,13 @@
|
|
1
1
|
<?php
|
2
2
|
/**
|
3
|
-
* HTML for testing the
|
3
|
+
* HTML for testing the `store` function.
|
4
4
|
*
|
5
5
|
* @package gutenberg-test-interactive-blocks
|
6
6
|
*/
|
7
|
-
|
8
|
-
wp_enqueue_script_module( 'store-view' );
|
9
7
|
?>
|
10
8
|
|
11
9
|
<div data-wp-interactive="test/store">
|
10
|
+
<div data-wp-text="state.0" data-testid="state-0"></div>
|
12
11
|
<div
|
13
12
|
data-testid="non-plain object"
|
14
13
|
data-wp-text="state.isNotProxified"
|
@@ -0,0 +1 @@
|
|
1
|
+
<?php return array( 'dependencies' => array( '@wordpress/interactivity' ) );
|
@@ -3,18 +3,21 @@
|
|
3
3
|
*/
|
4
4
|
import { store, getElement } from '@wordpress/interactivity';
|
5
5
|
|
6
|
+
// A non-object state should never be allowed.
|
7
|
+
store( 'test/store', { state: [ 'wrong' ] } );
|
6
8
|
|
7
9
|
const { state } = store( 'test/store', {
|
8
10
|
state: {
|
11
|
+
0: 'right',
|
9
12
|
get isNotProxified() {
|
10
13
|
const { ref } = getElement();
|
11
14
|
return state.elementRef === ref;
|
12
|
-
}
|
15
|
+
},
|
13
16
|
},
|
14
17
|
callbacks: {
|
15
18
|
init() {
|
16
19
|
const { ref } = getElement();
|
17
20
|
state.elementRef = ref; // HTMLElement
|
18
|
-
}
|
19
|
-
}
|
20
|
-
} )
|
21
|
+
},
|
22
|
+
},
|
23
|
+
} );
|
@@ -7,8 +7,6 @@
|
|
7
7
|
* @phpcs:disable VariableAnalysis.CodeAnalysis.VariableAnalysis.UndefinedVariable
|
8
8
|
*/
|
9
9
|
|
10
|
-
wp_enqueue_script_module( 'store-tag-view' );
|
11
|
-
|
12
10
|
// These variables simulates SSR.
|
13
11
|
$test_store_tag_counter = 'ok' === $attributes['condition'] ? 3 : 0;
|
14
12
|
$test_store_tag_double = $test_store_tag_counter * 2;
|
@@ -0,0 +1 @@
|
|
1
|
+
<?php return array( 'dependencies' => array( '@wordpress/interactivity' ) );
|
@@ -0,0 +1 @@
|
|
1
|
+
<?php return array( 'dependencies' => array( '@wordpress/interactivity' ) );
|
@@ -0,0 +1 @@
|
|
1
|
+
<?php return array( 'dependencies' => array( '@wordpress/interactivity' ) );
|
@@ -4,8 +4,6 @@
|
|
4
4
|
*
|
5
5
|
* @package gutenberg-test-interactive-blocks
|
6
6
|
*/
|
7
|
-
|
8
|
-
wp_enqueue_script_module( 'with-scope-view' );
|
9
7
|
?>
|
10
8
|
|
11
9
|
<div data-wp-interactive="with-scope" data-wp-context='{"asyncCounter": 0, "syncCounter": 0}' data-wp-init--a='callbacks.asyncInit' data-wp-init--b='callbacks.syncInit'>
|
@@ -0,0 +1 @@
|
|
1
|
+
<?php return array( 'dependencies' => array( '@wordpress/interactivity' ) );
|
@@ -15,26 +15,8 @@ add_action(
|
|
15
15
|
$block_json_files = glob( __DIR__ . '/interactive-blocks/**/block.json' );
|
16
16
|
|
17
17
|
// Auto register all blocks that were found.
|
18
|
-
foreach ( $block_json_files as $
|
19
|
-
|
20
|
-
$name = basename( $block_folder );
|
21
|
-
|
22
|
-
$view_file = plugin_dir_url( $block_folder ) . $name . '/' . 'view.js';
|
23
|
-
|
24
|
-
wp_register_script_module(
|
25
|
-
$name . '-view',
|
26
|
-
$view_file,
|
27
|
-
array(
|
28
|
-
'@wordpress/interactivity',
|
29
|
-
array(
|
30
|
-
'id' => '@wordpress/interactivity-router',
|
31
|
-
'import' => 'dynamic',
|
32
|
-
),
|
33
|
-
),
|
34
|
-
filemtime( $view_file )
|
35
|
-
);
|
36
|
-
|
37
|
-
register_block_type_from_metadata( $block_folder );
|
18
|
+
foreach ( $block_json_files as $block_json_file ) {
|
19
|
+
register_block_type( $block_json_file );
|
38
20
|
}
|
39
21
|
}
|
40
22
|
|
@@ -49,7 +31,8 @@ add_action(
|
|
49
31
|
// But remove the server directive processing.
|
50
32
|
remove_filter(
|
51
33
|
'render_block_data',
|
52
|
-
'wp_interactivity_process_directives_of_interactive_blocks'
|
34
|
+
'wp_interactivity_process_directives_of_interactive_blocks',
|
35
|
+
100
|
53
36
|
);
|
54
37
|
}
|
55
38
|
}
|