Changeset 54894 for trunk/tests/phpunit/tests/query/cacheResults.php
- Timestamp:
- 11/29/2022 08:27:29 PM (2 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/tests/phpunit/tests/query/cacheResults.php
r54771 r54894 1238 1238 $query_1 = new WP_Query( 1239 1239 array( 1240 'post_type' => 'page', 1241 'fields' => $fields, 1242 'author' => self::$author_id, 1240 'post_type' => 'page', 1241 'fields' => $fields, 1242 'author' => self::$author_id, 1243 'update_post_meta_cache' => false, 1244 'update_post_term_cache' => false, 1243 1245 ) 1244 1246 ); … … 1248 1250 $query_1->the_post(); 1249 1251 $num_loop_queries = get_num_queries() - $start_loop_queries; 1252 /* 1253 * Two expected queries: 1254 * 1: User meta data, 1255 * 2: User data. 1256 */ 1250 1257 $this->assertSame( 2, $num_loop_queries, 'Unexpected number of queries while initializing the loop.' ); 1251 1258 … … 1272 1279 ); 1273 1280 } 1281 1282 /** 1283 * Ensure lazy loading term meta queries all term meta in a single query. 1284 * 1285 * @since 6.1.2 1286 * @ticket 57163 1287 * @ticket 22176 1288 */ 1289 public function test_get_post_meta_lazy_loads_all_term_meta_data() { 1290 $query = new WP_Query(); 1291 1292 $t2 = $this->factory()->term->create( 1293 array( 1294 'taxonomy' => 'category', 1295 'slug' => 'bar', 1296 'name' => 'Bar', 1297 ) 1298 ); 1299 1300 wp_set_post_terms( self::$posts[0], $t2, 'category', true ); 1301 // Clean data added to cache by factory and setting terms. 1302 clean_term_cache( array( self::$t1, $t2 ), 'category' ); 1303 clean_post_cache( self::$posts[0] ); 1304 1305 $num_queries_start = get_num_queries(); 1306 $query_posts = $query->query( 1307 array( 1308 'lazy_load_term_meta' => true, 1309 'no_found_rows' => true, 1310 ) 1311 ); 1312 $num_queries = get_num_queries() - $num_queries_start; 1313 1314 /* 1315 * Four expected queries: 1316 * 1: Post IDs 1317 * 2: Post data 1318 * 3: Post meta data. 1319 * 4: Post term data. 1320 */ 1321 $this->assertSame( 4, $num_queries, 'Unexpected number of queries while querying posts.' ); 1322 $this->assertNotEmpty( $query_posts, 'Query posts is empty.' ); 1323 1324 $num_queries_start = get_num_queries(); 1325 get_term_meta( self::$t1 ); 1326 $num_queries = get_num_queries() - $num_queries_start; 1327 1328 /* 1329 * One expected query: 1330 * 1: Term meta data. 1331 */ 1332 $this->assertSame( 1, $num_queries, 'Unexpected number of queries during first query of term meta.' ); 1333 1334 $num_queries_start = get_num_queries(); 1335 get_term_meta( $t2 ); 1336 $num_queries = get_num_queries() - $num_queries_start; 1337 1338 // No additional queries expected. 1339 $this->assertSame( 0, $num_queries, 'Unexpected number of queries during second query of term meta.' ); 1340 } 1274 1341 }
Note: See TracChangeset
for help on using the changeset viewer.