mirror of
https://github.com/gosticks/wordpress-develop.git
synced 2026-06-28 22:30:04 +00:00
Update @wordpress packages
Update packages to include these bug fixes from Gutenberg: - Update Pattern block category and add documentation - Fix non existent menu handling in nav block - Make Reusable blocks available in the Site Editor - Add caching to WP_Theme_JSON_Resolver_Gutenberg::get_user_data_from_custom_post_type() - theme.json: add appearanceTools flag to opt-in into appearance UI controls - Update the block theme folders to templates and parts - Remove reference to gutenberg_, swap with wp_ - Use table layout in templates list screen - Update featured image placeholder graphic. - [Inserter]: Adjust order of theme blocks and reorder inserter items - Implement suitable fallback for Nav block on front end of site when no menu selected - Toggle Group Control: add tooltip - Use first non-empty Nav post as primary fallback for Nav block - Change .nvmrc and documentation for Node.js version (LTS to 14.18.1) - Update: Migrate global styles user database data on the rest endpoint - Update global styles public API - Update: Rename user preset origin to custom - Try always generating navigation post title - Show all templates and template parts on the site editor list screens - Highlight "Site" in the navigation panel - Fix template part slug generation when creating through the block placeholder - [Block Library - Post Title]: Fix render error when setting Page to homepage - Add 'Clear customizations' button to template list page - Gallery v1: Allow clicks within replace media placeholder state - Site Editor: Set the <title> on the list page to be same as the CPT name - Gallery: Fix stuck image size options loader - Cover: Fix undo trap - Add success and error snackbars to the templates list page - Fix: theme colors cannot override defaults - Fix: Color palette is not being stored - Add elements support to the typography panel in global styles - Make links plural in global styles - Add: Gradient palette editor - Update some small style regressions in the template list - Add: Transparency support on global styles colors - Fix: apply by slug on all origins - Render empty Nav block if no fallback block can be utilised - Allow filtering of Nav block fallback - Fix Nav block fallback DB query to match on full block grammar start tag - Remove unstable max pages attribute from Nav block - DateTimePicker: set PM hours correctly - Update delete template button - Site Editor: Template list add rename action - Fix Nav block editing wrong entity on creation of new Menu - [REST] Restore the missing double slash in the ID received by /templates - Add icons to navigation sidebar items - Update function names for the public global styles API functions - Templates Controller: Add missing 'is_custom' prop - Rename gutenberg_ to wp_ for some functions that land in WordPress 5.9 - [Block Library - Template Part]:Remove support for conversion to Reusable block - Global Styles: Call "palettes" and not "color palettes" on panel label - Add button text when no colors found - Update: Global Styes: Count all color palette origins on the palette counter - Rename navigationMenuId to ref - Offset the parent iframe when computing Popover position - Fix: Failing PHPUnit test - Show theme, plugin or author in Added By column with appropriate icon or avatar - Add origin and author to template rest api See #54487. Props talldanwp, mamaduka, oandregal. git-svn-id: https://develop.svn.wordpress.org/trunk@52275 602fd350-edb4-49c9-b593-d223f7449a82
This commit is contained in:
@@ -53,7 +53,6 @@ class Tests_REST_WpRestTemplatesController extends WP_Test_REST_Controller_Testc
|
||||
wp_delete_post( self::$post->ID );
|
||||
}
|
||||
|
||||
|
||||
public function test_register_routes() {
|
||||
$routes = rest_get_server()->get_routes();
|
||||
$this->assertArrayHasKey( '/wp/v2/templates', $routes );
|
||||
@@ -93,6 +92,7 @@ class Tests_REST_WpRestTemplatesController extends WP_Test_REST_Controller_Testc
|
||||
'theme' => 'default',
|
||||
'slug' => 'my_template',
|
||||
'source' => 'custom',
|
||||
'origin' => null,
|
||||
'type' => 'wp_template',
|
||||
'description' => 'Description of my template.',
|
||||
'title' => array(
|
||||
@@ -102,6 +102,8 @@ class Tests_REST_WpRestTemplatesController extends WP_Test_REST_Controller_Testc
|
||||
'status' => 'publish',
|
||||
'wp_id' => self::$post->ID,
|
||||
'has_theme_file' => false,
|
||||
'is_custom' => true,
|
||||
'author' => 0,
|
||||
),
|
||||
$this->find_and_normalize_template_by_id( $data, 'default//my_template' )
|
||||
);
|
||||
@@ -134,6 +136,7 @@ class Tests_REST_WpRestTemplatesController extends WP_Test_REST_Controller_Testc
|
||||
'theme' => 'default',
|
||||
'slug' => 'my_template',
|
||||
'source' => 'custom',
|
||||
'origin' => null,
|
||||
'type' => 'wp_template',
|
||||
'description' => 'Description of my template.',
|
||||
'title' => array(
|
||||
@@ -143,11 +146,78 @@ class Tests_REST_WpRestTemplatesController extends WP_Test_REST_Controller_Testc
|
||||
'status' => 'publish',
|
||||
'wp_id' => self::$post->ID,
|
||||
'has_theme_file' => false,
|
||||
'is_custom' => true,
|
||||
'author' => 0,
|
||||
),
|
||||
$data
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* @ticket 54507
|
||||
* @dataProvider get_template_endpoint_urls
|
||||
*/
|
||||
public function test_get_item_works_with_a_single_slash( $endpoint_url ) {
|
||||
wp_set_current_user( self::$admin_id );
|
||||
$request = new WP_REST_Request( 'GET', $endpoint_url );
|
||||
$response = rest_get_server()->dispatch( $request );
|
||||
|
||||
$data = $response->get_data();
|
||||
unset( $data['content'] );
|
||||
unset( $data['_links'] );
|
||||
|
||||
$this->assertSame(
|
||||
array(
|
||||
'id' => 'default//my_template',
|
||||
'theme' => 'default',
|
||||
'slug' => 'my_template',
|
||||
'source' => 'custom',
|
||||
'origin' => null,
|
||||
'type' => 'wp_template',
|
||||
'description' => 'Description of my template.',
|
||||
'title' => array(
|
||||
'raw' => 'My Template',
|
||||
'rendered' => 'My Template',
|
||||
),
|
||||
'status' => 'publish',
|
||||
'wp_id' => self::$post->ID,
|
||||
'has_theme_file' => false,
|
||||
'is_custom' => true,
|
||||
'author' => 0,
|
||||
),
|
||||
$data
|
||||
);
|
||||
}
|
||||
|
||||
public function get_template_endpoint_urls() {
|
||||
return array(
|
||||
array( '/wp/v2/templates/default/my_template' ),
|
||||
array( '/wp/v2/templates/default//my_template' ),
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* @ticket 54507
|
||||
* @dataProvider get_template_ids_to_sanitize
|
||||
*/
|
||||
public function test_sanitize_template_id( $input_id, $sanitized_id ) {
|
||||
$endpoint = new WP_REST_Templates_Controller( 'wp_template' );
|
||||
$this->assertEquals(
|
||||
$sanitized_id,
|
||||
$endpoint->_sanitize_template_id( $input_id )
|
||||
);
|
||||
}
|
||||
|
||||
public function get_template_ids_to_sanitize() {
|
||||
return array(
|
||||
array( 'tt1-blocks/index', 'tt1-blocks//index' ),
|
||||
array( 'tt1-blocks//index', 'tt1-blocks//index' ),
|
||||
|
||||
array( 'theme-experiments/tt1-blocks/index', 'theme-experiments/tt1-blocks//index' ),
|
||||
array( 'theme-experiments/tt1-blocks//index', 'theme-experiments/tt1-blocks//index' ),
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* @ticket 54422
|
||||
* @covers WP_REST_Templates_Controller::create_item
|
||||
@@ -161,6 +231,7 @@ class Tests_REST_WpRestTemplatesController extends WP_Test_REST_Controller_Testc
|
||||
'description' => 'Just a description',
|
||||
'title' => 'My Template',
|
||||
'content' => 'Content',
|
||||
'author' => self::$admin_id,
|
||||
)
|
||||
);
|
||||
$response = rest_get_server()->dispatch( $request );
|
||||
@@ -177,6 +248,7 @@ class Tests_REST_WpRestTemplatesController extends WP_Test_REST_Controller_Testc
|
||||
),
|
||||
'slug' => 'my_custom_template',
|
||||
'source' => 'custom',
|
||||
'origin' => null,
|
||||
'type' => 'wp_template',
|
||||
'description' => 'Just a description',
|
||||
'title' => array(
|
||||
@@ -185,6 +257,8 @@ class Tests_REST_WpRestTemplatesController extends WP_Test_REST_Controller_Testc
|
||||
),
|
||||
'status' => 'publish',
|
||||
'has_theme_file' => false,
|
||||
'is_custom' => true,
|
||||
'author' => self::$admin_id,
|
||||
),
|
||||
$data
|
||||
);
|
||||
@@ -207,6 +281,7 @@ class Tests_REST_WpRestTemplatesController extends WP_Test_REST_Controller_Testc
|
||||
'content' => array(
|
||||
'raw' => 'Content',
|
||||
),
|
||||
'author' => self::$admin_id,
|
||||
)
|
||||
);
|
||||
$response = rest_get_server()->dispatch( $request );
|
||||
@@ -223,6 +298,7 @@ class Tests_REST_WpRestTemplatesController extends WP_Test_REST_Controller_Testc
|
||||
),
|
||||
'slug' => 'my_custom_template_raw',
|
||||
'source' => 'custom',
|
||||
'origin' => null,
|
||||
'type' => 'wp_template',
|
||||
'description' => 'Just a description',
|
||||
'title' => array(
|
||||
@@ -231,11 +307,29 @@ class Tests_REST_WpRestTemplatesController extends WP_Test_REST_Controller_Testc
|
||||
),
|
||||
'status' => 'publish',
|
||||
'has_theme_file' => false,
|
||||
'is_custom' => true,
|
||||
'author' => self::$admin_id,
|
||||
),
|
||||
$data
|
||||
);
|
||||
}
|
||||
|
||||
public function test_create_item_invalid_author() {
|
||||
wp_set_current_user( self::$admin_id );
|
||||
$request = new WP_REST_Request( 'POST', '/wp/v2/templates' );
|
||||
$request->set_body_params(
|
||||
array(
|
||||
'slug' => 'my_custom_template_invalid_author',
|
||||
'description' => 'Just a description',
|
||||
'title' => 'My Template',
|
||||
'content' => 'Content',
|
||||
'author' => -1,
|
||||
)
|
||||
);
|
||||
$response = rest_get_server()->dispatch( $request );
|
||||
$this->assertErrorResponse( 'rest_invalid_author', $response, 400 );
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers WP_REST_Templates_Controller::update_item
|
||||
*/
|
||||
@@ -370,19 +464,22 @@ class Tests_REST_WpRestTemplatesController extends WP_Test_REST_Controller_Testc
|
||||
$response = rest_get_server()->dispatch( $request );
|
||||
$data = $response->get_data();
|
||||
$properties = $data['schema']['properties'];
|
||||
$this->assertCount( 11, $properties );
|
||||
$this->assertCount( 14, $properties );
|
||||
$this->assertArrayHasKey( 'id', $properties );
|
||||
$this->assertArrayHasKey( 'description', $properties );
|
||||
$this->assertArrayHasKey( 'slug', $properties );
|
||||
$this->assertArrayHasKey( 'theme', $properties );
|
||||
$this->assertArrayHasKey( 'type', $properties );
|
||||
$this->assertArrayHasKey( 'source', $properties );
|
||||
$this->assertArrayHasKey( 'origin', $properties );
|
||||
$this->assertArrayHasKey( 'content', $properties );
|
||||
$this->assertArrayHasKey( 'title', $properties );
|
||||
$this->assertArrayHasKey( 'description', $properties );
|
||||
$this->assertArrayHasKey( 'status', $properties );
|
||||
$this->assertArrayHasKey( 'wp_id', $properties );
|
||||
$this->assertArrayHasKey( 'has_theme_file', $properties );
|
||||
$this->assertArrayHasKey( 'is_custom', $properties );
|
||||
$this->assertArrayHasKey( 'author', $properties );
|
||||
}
|
||||
|
||||
protected function find_and_normalize_template_by_id( $templates, $id ) {
|
||||
|
||||
@@ -200,6 +200,79 @@ class Tests_Theme_wpThemeJson extends WP_UnitTestCase {
|
||||
$this->assertEqualSetsWithIndex( $expected_no_origin, $actual_no_origin );
|
||||
}
|
||||
|
||||
function test_get_settings_using_opt_in_key() {
|
||||
$theme_json = new WP_Theme_JSON(
|
||||
array(
|
||||
'version' => WP_Theme_JSON::LATEST_SCHEMA,
|
||||
'settings' => array(
|
||||
'appearanceTools' => true,
|
||||
'blocks' => array(
|
||||
'core/paragraph' => array(
|
||||
'typography' => array(
|
||||
'lineHeight' => false,
|
||||
),
|
||||
),
|
||||
'core/group' => array(
|
||||
'appearanceTools' => true,
|
||||
'typography' => array(
|
||||
'lineHeight' => false, // This should override appearanceTools.
|
||||
),
|
||||
),
|
||||
),
|
||||
),
|
||||
)
|
||||
);
|
||||
|
||||
$actual = $theme_json->get_settings();
|
||||
$expected = array(
|
||||
'border' => array(
|
||||
'width' => true,
|
||||
'style' => true,
|
||||
'radius' => true,
|
||||
'color' => true,
|
||||
),
|
||||
'color' => array(
|
||||
'link' => true,
|
||||
),
|
||||
'spacing' => array(
|
||||
'blockGap' => true,
|
||||
'margin' => true,
|
||||
'padding' => true,
|
||||
),
|
||||
'typography' => array(
|
||||
'lineHeight' => true,
|
||||
),
|
||||
'blocks' => array(
|
||||
'core/paragraph' => array(
|
||||
'typography' => array(
|
||||
'lineHeight' => false,
|
||||
),
|
||||
),
|
||||
'core/group' => array(
|
||||
'border' => array(
|
||||
'width' => true,
|
||||
'style' => true,
|
||||
'radius' => true,
|
||||
'color' => true,
|
||||
),
|
||||
'color' => array(
|
||||
'link' => true,
|
||||
),
|
||||
'spacing' => array(
|
||||
'blockGap' => true,
|
||||
'margin' => true,
|
||||
'padding' => true,
|
||||
),
|
||||
'typography' => array(
|
||||
'lineHeight' => false,
|
||||
),
|
||||
),
|
||||
),
|
||||
);
|
||||
|
||||
$this->assertEqualSetsWithIndex( $expected, $actual );
|
||||
}
|
||||
|
||||
/**
|
||||
* @ticket 54336
|
||||
*/
|
||||
@@ -1060,6 +1133,144 @@ class Tests_Theme_wpThemeJson extends WP_UnitTestCase {
|
||||
$this->assertEqualSetsWithIndex( $expected, $actual );
|
||||
}
|
||||
|
||||
public function test_merge_incoming_data_removes_theme_presets_with_slugs_as_default_presets() {
|
||||
$defaults = new WP_Theme_JSON(
|
||||
array(
|
||||
'version' => WP_Theme_JSON::LATEST_SCHEMA,
|
||||
'settings' => array(
|
||||
'color' => array(
|
||||
'palette' => array(
|
||||
array(
|
||||
'slug' => 'red',
|
||||
'color' => 'red',
|
||||
'name' => 'Red',
|
||||
),
|
||||
array(
|
||||
'slug' => 'green',
|
||||
'color' => 'green',
|
||||
'name' => 'Green',
|
||||
),
|
||||
),
|
||||
),
|
||||
'blocks' => array(
|
||||
'core/paragraph' => array(
|
||||
'color' => array(
|
||||
'palette' => array(
|
||||
array(
|
||||
'slug' => 'blue',
|
||||
'color' => 'blue',
|
||||
'name' => 'Blue',
|
||||
),
|
||||
),
|
||||
),
|
||||
),
|
||||
),
|
||||
),
|
||||
),
|
||||
'default'
|
||||
);
|
||||
$theme = new WP_Theme_JSON(
|
||||
array(
|
||||
'version' => WP_Theme_JSON::LATEST_SCHEMA,
|
||||
'settings' => array(
|
||||
'color' => array(
|
||||
'palette' => array(
|
||||
array(
|
||||
'slug' => 'pink',
|
||||
'color' => 'pink',
|
||||
'name' => 'Pink',
|
||||
),
|
||||
array(
|
||||
'slug' => 'green',
|
||||
'color' => 'green',
|
||||
'name' => 'Greenish',
|
||||
),
|
||||
),
|
||||
),
|
||||
'blocks' => array(
|
||||
'core/paragraph' => array(
|
||||
'color' => array(
|
||||
'palette' => array(
|
||||
array(
|
||||
'slug' => 'blue',
|
||||
'color' => 'blue',
|
||||
'name' => 'Bluish',
|
||||
),
|
||||
array(
|
||||
'slug' => 'yellow',
|
||||
'color' => 'yellow',
|
||||
'name' => 'Yellow',
|
||||
),
|
||||
array(
|
||||
'slug' => 'green',
|
||||
'color' => 'green',
|
||||
'name' => 'Block Green',
|
||||
),
|
||||
),
|
||||
),
|
||||
),
|
||||
),
|
||||
),
|
||||
)
|
||||
);
|
||||
|
||||
$expected = array(
|
||||
'version' => WP_Theme_JSON::LATEST_SCHEMA,
|
||||
'settings' => array(
|
||||
'color' => array(
|
||||
'palette' => array(
|
||||
'default' => array(
|
||||
array(
|
||||
'slug' => 'red',
|
||||
'color' => 'red',
|
||||
'name' => 'Red',
|
||||
),
|
||||
array(
|
||||
'slug' => 'green',
|
||||
'color' => 'green',
|
||||
'name' => 'Green',
|
||||
),
|
||||
),
|
||||
'theme' => array(
|
||||
array(
|
||||
'slug' => 'pink',
|
||||
'color' => 'pink',
|
||||
'name' => 'Pink',
|
||||
),
|
||||
),
|
||||
),
|
||||
),
|
||||
'blocks' => array(
|
||||
'core/paragraph' => array(
|
||||
'color' => array(
|
||||
'palette' => array(
|
||||
'default' => array(
|
||||
array(
|
||||
'slug' => 'blue',
|
||||
'color' => 'blue',
|
||||
'name' => 'Blue',
|
||||
),
|
||||
),
|
||||
'theme' => array(
|
||||
array(
|
||||
'slug' => 'yellow',
|
||||
'color' => 'yellow',
|
||||
'name' => 'Yellow',
|
||||
),
|
||||
),
|
||||
),
|
||||
),
|
||||
),
|
||||
),
|
||||
),
|
||||
);
|
||||
|
||||
$defaults->merge( $theme );
|
||||
$actual = $defaults->get_raw_data();
|
||||
|
||||
$this->assertEqualSetsWithIndex( $expected, $actual );
|
||||
}
|
||||
|
||||
/**
|
||||
* @ticket 54336
|
||||
*/
|
||||
@@ -1298,7 +1509,7 @@ class Tests_Theme_wpThemeJson extends WP_UnitTestCase {
|
||||
'color' => array(
|
||||
'custom' => true,
|
||||
'palette' => array(
|
||||
'user' => array(
|
||||
'custom' => array(
|
||||
array(
|
||||
'name' => 'Red',
|
||||
'slug' => 'red',
|
||||
@@ -1325,7 +1536,7 @@ class Tests_Theme_wpThemeJson extends WP_UnitTestCase {
|
||||
'color' => array(
|
||||
'custom' => true,
|
||||
'palette' => array(
|
||||
'user' => array(
|
||||
'custom' => array(
|
||||
array(
|
||||
'name' => 'Yellow',
|
||||
'slug' => 'yellow',
|
||||
@@ -1358,7 +1569,7 @@ class Tests_Theme_wpThemeJson extends WP_UnitTestCase {
|
||||
'settings' => array(
|
||||
'color' => array(
|
||||
'palette' => array(
|
||||
'user' => array(
|
||||
'custom' => array(
|
||||
array(
|
||||
'name' => 'Red',
|
||||
'slug' => 'red',
|
||||
@@ -1381,7 +1592,7 @@ class Tests_Theme_wpThemeJson extends WP_UnitTestCase {
|
||||
'core/group' => array(
|
||||
'color' => array(
|
||||
'palette' => array(
|
||||
'user' => array(
|
||||
'custom' => array(
|
||||
array(
|
||||
'name' => 'Yellow',
|
||||
'slug' => 'yellow',
|
||||
@@ -1417,7 +1628,7 @@ class Tests_Theme_wpThemeJson extends WP_UnitTestCase {
|
||||
'settings' => array(
|
||||
'color' => array(
|
||||
'palette' => array(
|
||||
'user' => array(
|
||||
'custom' => array(
|
||||
array(
|
||||
'name' => 'Red/><b>ok</ok>',
|
||||
'slug' => 'red',
|
||||
@@ -1443,7 +1654,7 @@ class Tests_Theme_wpThemeJson extends WP_UnitTestCase {
|
||||
),
|
||||
'typography' => array(
|
||||
'fontFamilies' => array(
|
||||
'user' => array(
|
||||
'custom' => array(
|
||||
array(
|
||||
'name' => 'Helvetica Arial/><b>test</b>',
|
||||
'slug' => 'helvetica-arial',
|
||||
@@ -1471,7 +1682,7 @@ class Tests_Theme_wpThemeJson extends WP_UnitTestCase {
|
||||
'core/group' => array(
|
||||
'color' => array(
|
||||
'palette' => array(
|
||||
'user' => array(
|
||||
'custom' => array(
|
||||
array(
|
||||
'name' => 'Red/><b>ok</ok>',
|
||||
'slug' => 'red',
|
||||
@@ -1506,7 +1717,7 @@ class Tests_Theme_wpThemeJson extends WP_UnitTestCase {
|
||||
'settings' => array(
|
||||
'color' => array(
|
||||
'palette' => array(
|
||||
'user' => array(
|
||||
'custom' => array(
|
||||
array(
|
||||
'name' => 'Pink',
|
||||
'slug' => 'pink',
|
||||
@@ -1517,7 +1728,7 @@ class Tests_Theme_wpThemeJson extends WP_UnitTestCase {
|
||||
),
|
||||
'typography' => array(
|
||||
'fontFamilies' => array(
|
||||
'user' => array(
|
||||
'custom' => array(
|
||||
array(
|
||||
'name' => 'Cambria',
|
||||
'slug' => 'cambria',
|
||||
@@ -1530,7 +1741,7 @@ class Tests_Theme_wpThemeJson extends WP_UnitTestCase {
|
||||
'core/group' => array(
|
||||
'color' => array(
|
||||
'palette' => array(
|
||||
'user' => array(
|
||||
'custom' => array(
|
||||
array(
|
||||
'name' => 'Pink',
|
||||
'slug' => 'pink',
|
||||
|
||||
@@ -24,6 +24,7 @@ class Tests_Theme_wpThemeJsonResolver extends WP_UnitTestCase {
|
||||
add_filter( 'theme_root', array( $this, 'filter_set_theme_root' ) );
|
||||
add_filter( 'stylesheet_root', array( $this, 'filter_set_theme_root' ) );
|
||||
add_filter( 'template_root', array( $this, 'filter_set_theme_root' ) );
|
||||
$this->queries = array();
|
||||
// Clear caches.
|
||||
wp_clean_themes_cache();
|
||||
unset( $GLOBALS['wp_themes'] );
|
||||
@@ -44,6 +45,13 @@ class Tests_Theme_wpThemeJsonResolver extends WP_UnitTestCase {
|
||||
return 'pl_PL';
|
||||
}
|
||||
|
||||
function filter_db_query( $query ) {
|
||||
if ( preg_match( '#post_type = \'wp_global_styles\'#', $query ) ) {
|
||||
$this->queries[] = $query;
|
||||
}
|
||||
return $query;
|
||||
}
|
||||
|
||||
/**
|
||||
* @ticket 52991
|
||||
* @ticket 54336
|
||||
@@ -312,4 +320,30 @@ class Tests_Theme_wpThemeJsonResolver extends WP_UnitTestCase {
|
||||
)
|
||||
);
|
||||
}
|
||||
|
||||
function test_get_user_data_from_custom_post_type_does_not_use_uncached_queries() {
|
||||
add_filter( 'query', array( $this, 'filter_db_query' ) );
|
||||
$query_count = count( $this->queries );
|
||||
for ( $i = 0; $i < 3; $i++ ) {
|
||||
WP_Theme_JSON_Resolver::get_user_data_from_custom_post_type( wp_get_theme() );
|
||||
WP_Theme_JSON_Resolver::clean_cached_data();
|
||||
}
|
||||
$query_count = count( $this->queries ) - $query_count;
|
||||
$this->assertEquals( 1, $query_count, 'Only one SQL query should be peformed for multiple invocations of WP_Theme_JSON_Resolver::get_user_data_from_custom_post_type()' );
|
||||
|
||||
$user_cpt = WP_Theme_JSON_Resolver::get_user_data_from_custom_post_type( wp_get_theme() );
|
||||
$this->assertEmpty( $user_cpt );
|
||||
|
||||
$user_cpt = WP_Theme_JSON_Resolver::get_user_data_from_custom_post_type( wp_get_theme(), true );
|
||||
$this->assertNotEmpty( $user_cpt );
|
||||
|
||||
$query_count = count( $this->queries );
|
||||
for ( $i = 0; $i < 3; $i++ ) {
|
||||
WP_Theme_JSON_Resolver::get_user_data_from_custom_post_type( wp_get_theme() );
|
||||
WP_Theme_JSON_Resolver::clean_cached_data();
|
||||
}
|
||||
$query_count = count( $this->queries ) - $query_count;
|
||||
$this->assertEquals( 0, $query_count, 'Unexpected SQL queries detected for the wp_global_style post type' );
|
||||
remove_filter( 'query', array( $this, 'filter_db_query' ) );
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user