Changeset 52921 for trunk/tests/phpunit/tests/term/termExists.php
- Timestamp:
- 03/11/2022 11:05:02 AM (3 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/tests/phpunit/tests/term/termExists.php
r52389 r52921 272 272 } 273 273 274 /** 275 * @ticket 36949 276 * @covers ::term_exists() 277 */ 278 public function test_term_lookup_by_id_and_update() { 279 register_taxonomy( 'wptests_tax', 'post' ); 280 281 $slug = __FUNCTION__; 282 $t = self::factory()->term->create( 283 array( 284 'slug' => $slug, 285 'taxonomy' => 'wptests_tax', 286 ) 287 ); 288 $this->assertEquals( $t, term_exists( $t ) ); 289 $this->assertTrue( wp_delete_term( $t, 'wptests_tax' ) ); 290 $this->assertNull( term_exists( $t ) ); 291 292 // Clean up. 293 _unregister_taxonomy( 'wptests_tax' ); 294 } 295 296 /** 297 * @ticket 36949 298 * @covers ::term_exists() 299 */ 300 public function test_term_lookup_by_slug_and_update() { 301 register_taxonomy( 'wptests_tax', 'post' ); 302 303 $slug = __FUNCTION__; 304 $t = self::factory()->term->create( 305 array( 306 'slug' => $slug, 307 'taxonomy' => 'wptests_tax', 308 ) 309 ); 310 $this->assertEquals( $t, term_exists( $slug ) ); 311 $this->assertTrue( wp_delete_term( $t, 'wptests_tax' ) ); 312 $this->assertNull( term_exists( $slug ) ); 313 314 // Clean up. 315 _unregister_taxonomy( 'wptests_tax' ); 316 } 317 318 /** 319 * @ticket 36949 320 * @covers ::term_exists() 321 */ 322 public function test_term_exists_caching() { 323 global $wpdb; 324 register_taxonomy( 'wptests_tax', 'post' ); 325 326 $slug = __FUNCTION__; 327 $t = self::factory()->term->create( 328 array( 329 'slug' => $slug, 330 'taxonomy' => 'wptests_tax', 331 ) 332 ); 333 $this->assertEquals( $t, term_exists( $slug ) ); 334 $num_queries = $wpdb->num_queries; 335 $this->assertEquals( $t, term_exists( $slug ) ); 336 $this->assertSame( $num_queries, $wpdb->num_queries ); 337 338 $this->assertTrue( wp_delete_term( $t, 'wptests_tax' ) ); 339 $num_queries = $wpdb->num_queries; 340 $this->assertNull( term_exists( $slug ) ); 341 $this->assertSame( $num_queries + 2, $wpdb->num_queries ); 342 343 // Clean up. 344 _unregister_taxonomy( 'wptests_tax' ); 345 } 346 347 /** 348 * @ticket 36949 349 * @covers ::term_exists() 350 */ 351 public function test_term_exists_caching_suspend_cache_invalidation() { 352 global $wpdb; 353 register_taxonomy( 'wptests_tax', 'post' ); 354 355 wp_suspend_cache_invalidation( true ); 356 $slug = __FUNCTION__; 357 $t = self::factory()->term->create( 358 array( 359 'slug' => $slug, 360 'taxonomy' => 'wptests_tax', 361 ) 362 ); 363 364 $this->assertEquals( $t, term_exists( $slug ) ); 365 $num_queries = $wpdb->num_queries; 366 $this->assertEquals( $t, term_exists( $slug ) ); 367 $this->assertSame( $num_queries + 1, $wpdb->num_queries ); 368 wp_suspend_cache_invalidation( false ); 369 370 // Clean up. 371 _unregister_taxonomy( 'wptests_tax' ); 372 } 373 374 /** 375 * @ticket 36949 376 * @covers ::term_exists() 377 */ 378 public function test_term_exists_caching_by_int_suspend_cache_invalidation() { 379 register_taxonomy( 'wptests_tax', 'post' ); 380 381 $slug = __FUNCTION__; 382 $t = self::factory()->term->create( 383 array( 384 'slug' => $slug, 385 'taxonomy' => 'wptests_tax', 386 ) 387 ); 388 389 // Warm cache in get_term() via term_exists(). 390 term_exists( $t ); 391 wp_suspend_cache_invalidation( true ); 392 wp_delete_term( $t, 'wptests_tax' ); 393 $this->assertNull( term_exists( $t ) ); 394 395 // Reneable cache invalidation. 396 wp_suspend_cache_invalidation( false ); 397 _unregister_taxonomy( 'wptests_tax' ); 398 } 399 274 400 public function test_term_exists_unknown() { 275 401 $this->assertNull( term_exists( rand_str() ) );
Note: See TracChangeset
for help on using the changeset viewer.