Make WordPress Core


Ignore:
Timestamp:
05/11/2023 10:05:51 AM (3 years ago)
Author:
spacedmonkey
Message:

Tests: Use the function get_num_queries across all unit tests.

Replace use of $wpdb->num_queries with a function call to get_num_queries. This improves readability and consistency between tests.

Props SergeyBiryukov, peterwilsoncc, spacedmonkey.
See #57841.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/tests/phpunit/tests/term/cache.php

    r54090 r55745  
    102102
    103103        public function test_get_term_should_update_term_cache_when_passed_an_object() {
    104                 global $wpdb;
    105 
    106104                register_taxonomy( 'wptests_tax', 'post' );
    107105                $term = self::factory()->term->create(
     
    117115                $this->assertEmpty( wp_cache_get( $term, 'terms' ) );
    118116
    119                 $num_queries = $wpdb->num_queries;
     117                $num_queries = get_num_queries();
    120118
    121119                // get_term() will only be update the cache if the 'filter' prop is unset.
     
    125123
    126124                // No new queries should have fired.
    127                 $this->assertSame( $num_queries, $wpdb->num_queries );
     125                $this->assertSame( $num_queries, get_num_queries() );
    128126                $this->assertSame( $term_object, $term_object_2 );
    129127        }
    130128
    131129        public function test_get_term_should_update_term_cache_when_passed_a_valid_term_identifier() {
    132                 global $wpdb;
    133 
    134130                register_taxonomy( 'wptests_tax', 'post' );
    135131                $term = self::factory()->term->create(
     
    144140                $this->assertEmpty( wp_cache_get( $term, 'terms' ) );
    145141
    146                 $num_queries = $wpdb->num_queries;
     142                $num_queries = get_num_queries();
    147143
    148144                // Prime cache.
    149145                $term_object = get_term( $term, 'wptests_tax' );
    150146                $this->assertNotEmpty( wp_cache_get( $term, 'terms' ) );
    151                 $this->assertSame( $num_queries + 1, $wpdb->num_queries );
     147                $this->assertSame( $num_queries + 1, get_num_queries() );
    152148
    153149                $term_object_2 = get_term( $term, 'wptests_tax' );
    154150
    155151                // No new queries should have fired.
    156                 $this->assertSame( $num_queries + 1, $wpdb->num_queries );
     152                $this->assertSame( $num_queries + 1, get_num_queries() );
    157153                $this->assertEquals( $term_object, $term_object_2 );
    158154        }
    159155
    160156        public function test_get_term_by_should_update_term_cache_when_passed_a_valid_term_identifier() {
    161                 global $wpdb;
    162 
    163157                register_taxonomy( 'wptests_tax', 'post' );
    164158                $term = self::factory()->term->create(
     
    173167                $this->assertEmpty( wp_cache_get( $term, 'terms' ) );
    174168
    175                 $num_queries = $wpdb->num_queries;
     169                $num_queries = get_num_queries();
    176170
    177171                // Prime cache.
    178172                $term_object = get_term_by( 'id', $term, 'wptests_tax' );
    179173                $this->assertNotEmpty( wp_cache_get( $term, 'terms' ) );
    180                 $this->assertSame( $num_queries + 1, $wpdb->num_queries );
     174                $this->assertSame( $num_queries + 1, get_num_queries() );
    181175
    182176                $term_object_2 = get_term( $term, 'wptests_tax' );
    183177
    184178                // No new queries should have fired.
    185                 $this->assertSame( $num_queries + 1, $wpdb->num_queries );
     179                $this->assertSame( $num_queries + 1, get_num_queries() );
    186180                $this->assertEquals( $term_object, $term_object_2 );
    187181        }
     
    191185         */
    192186        public function test_get_terms_should_update_cache_for_located_terms() {
    193                 global $wpdb;
    194 
    195187                register_taxonomy( 'wptests_tax', 'post' );
    196188
     
    209201                );
    210202
    211                 $num_queries = $wpdb->num_queries;
     203                $num_queries = get_num_queries();
    212204
    213205                foreach ( $terms as $term_id ) {
     
    215207                }
    216208
    217                 $this->assertSame( $num_queries, $wpdb->num_queries );
     209                $this->assertSame( $num_queries, get_num_queries() );
    218210
    219211                _unregister_taxonomy( 'wptests_tax' );
     
    243235         */
    244236        public function test_get_term_by_slug_cache() {
    245                 global $wpdb;
    246 
    247237                $term_id = self::factory()->term->create(
    248238                        array(
     
    254244
    255245                clean_term_cache( $term_id, 'post_tag' );
    256                 $num_queries = $wpdb->num_queries;
     246                $num_queries = get_num_queries();
    257247
    258248                $term        = get_term_by( 'slug', 'burrito', 'post_tag' );
    259249                $num_queries = $num_queries + 2;
    260250                $this->assertSame( 'Taco', $term->name );
    261                 $this->assertSame( $num_queries, $wpdb->num_queries );
     251                $this->assertSame( $num_queries, get_num_queries() );
    262252
    263253                // This should now hit cache.
    264254                $term = get_term_by( 'slug', 'burrito', 'post_tag' );
    265255                $this->assertSame( 'Taco', $term->name );
    266                 $this->assertSame( $num_queries, $wpdb->num_queries );
     256                $this->assertSame( $num_queries, get_num_queries() );
    267257
    268258                $this->assertEquals( get_term( $term_id, 'post_tag' ), $term );
    269                 $this->assertSame( $num_queries, $wpdb->num_queries );
     259                $this->assertSame( $num_queries, get_num_queries() );
    270260        }
    271261
     
    274264         */
    275265        public function test_get_term_by_slug_cache_update() {
    276                 global $wpdb;
    277 
    278266                $term_id = self::factory()->term->create(
    279267                        array(
     
    285273
    286274                clean_term_cache( $term_id, 'post_tag' );
    287                 $num_queries = $wpdb->num_queries;
     275                $num_queries = get_num_queries();
    288276
    289277                $term        = get_term_by( 'slug', 'burrito', 'post_tag' );
    290278                $num_queries = $num_queries + 2;
    291279                $this->assertSame( 'Taco', $term->name );
    292                 $this->assertSame( $num_queries, $wpdb->num_queries );
     280                $this->assertSame( $num_queries, get_num_queries() );
    293281
    294282                // This should now hit cache.
    295283                $term = get_term_by( 'slug', 'burrito', 'post_tag' );
    296284                $this->assertSame( 'Taco', $term->name );
    297                 $this->assertSame( $num_queries, $wpdb->num_queries );
     285                $this->assertSame( $num_queries, get_num_queries() );
    298286
    299287                // Update the tag which invalidates the cache.
    300288                wp_update_term( $term_id, 'post_tag', array( 'name' => 'No Taco' ) );
    301                 $num_queries = $wpdb->num_queries;
     289                $num_queries = get_num_queries();
    302290
    303291                // This should not hit cache.
     
    305293                $num_queries = $num_queries + 2;
    306294                $this->assertSame( 'No Taco', $term->name );
    307                 $this->assertSame( $num_queries, $wpdb->num_queries );
     295                $this->assertSame( $num_queries, get_num_queries() );
    308296        }
    309297
     
    312300         */
    313301        public function test_get_term_by_name_cache() {
    314                 global $wpdb;
    315 
    316302                $term_id = self::factory()->term->create(
    317303                        array(
     
    323309
    324310                clean_term_cache( $term_id, 'post_tag' );
    325                 $num_queries = $wpdb->num_queries;
     311                $num_queries = get_num_queries();
    326312
    327313                get_term_by( 'name', 'Burrito', 'post_tag' );
    328314                $num_queries = $num_queries + 2;
    329                 $this->assertSame( $num_queries, $wpdb->num_queries );
     315                $this->assertSame( $num_queries, get_num_queries() );
    330316
    331317                // This should now hit cache.
    332318                $term = get_term_by( 'name', 'Burrito', 'post_tag' );
    333                 $this->assertSame( $num_queries, $wpdb->num_queries );
     319                $this->assertSame( $num_queries, get_num_queries() );
    334320
    335321                $this->assertEquals( get_term( $term_id, 'post_tag' ), $term );
    336                 $this->assertSame( $num_queries, $wpdb->num_queries );
     322                $this->assertSame( $num_queries, get_num_queries() );
    337323        }
    338324
     
    341327         */
    342328        public function test_get_term_by_name_cache_update() {
    343                 global $wpdb;
    344 
    345329                $term_id = self::factory()->term->create(
    346330                        array(
     
    352336
    353337                clean_term_cache( $term_id, 'post_tag' );
    354                 $num_queries = $wpdb->num_queries;
     338                $num_queries = get_num_queries();
    355339
    356340                get_term_by( 'name', 'Burrito', 'post_tag' );
    357341                $num_queries = $num_queries + 2;
    358                 $this->assertSame( $num_queries, $wpdb->num_queries );
     342                $this->assertSame( $num_queries, get_num_queries() );
    359343
    360344                // This should now hit cache.
    361345                get_term_by( 'name', 'Burrito', 'post_tag' );
    362                 $this->assertSame( $num_queries, $wpdb->num_queries );
     346                $this->assertSame( $num_queries, get_num_queries() );
    363347
    364348                // Update the tag which invalidates the cache.
    365349                wp_update_term( $term_id, 'post_tag', array( 'slug' => 'taco' ) );
    366                 $num_queries = $wpdb->num_queries;
     350                $num_queries = get_num_queries();
    367351
    368352                // This should not hit cache.
    369353                get_term_by( 'name', 'burrito', 'post_tag' );
    370354                $num_queries = $num_queries + 2;
    371                 $this->assertSame( $num_queries, $wpdb->num_queries );
     355                $this->assertSame( $num_queries, get_num_queries() );
    372356        }
    373357
     
    376360         */
    377361        public function test_invalidating_term_caches_should_fail_when_invalidation_is_suspended() {
    378                 global $wpdb;
    379 
    380362                $term_id = self::factory()->term->create(
    381363                        array(
     
    386368
    387369                clean_term_cache( $term_id, 'post_tag' );
    388                 $num_queries  = $wpdb->num_queries;
     370                $num_queries  = get_num_queries();
    389371                $last_changed = wp_cache_get( 'last_changed', 'terms' );
    390372
     
    394376                // Verify the term is cached.
    395377                $term2 = get_term_by( 'name', 'Burrito', 'post_tag' );
    396                 $this->assertSame( $num_queries, $wpdb->num_queries );
     378                $this->assertSame( $num_queries, get_num_queries() );
    397379                $this->assertEquals( $term1, $term2 );
    398380
     
    401383                // Update the tag.
    402384                wp_update_term( $term_id, 'post_tag', array( 'name' => 'Taco' ) );
    403                 $num_queries = $wpdb->num_queries;
     385                $num_queries = get_num_queries();
    404386
    405387                // Verify that the cached term still matches the initial cached term.
    406388                $term3 = get_term_by( 'name', 'Burrito', 'post_tag' );
    407                 $this->assertSame( $num_queries, $wpdb->num_queries );
     389                $this->assertSame( $num_queries, get_num_queries() );
    408390                $this->assertEquals( $term1, $term3 );
    409391
     
    419401         */
    420402        public function test_get_term_by_does_not_prime_term_meta_cache() {
    421                 global $wpdb;
    422 
    423403                $term_id = self::factory()->term->create(
    424404                        array(
     
    430410
    431411                clean_term_cache( $term_id, 'post_tag' );
    432                 $num_queries = $wpdb->num_queries;
     412                $num_queries = get_num_queries();
    433413
    434414                $term        = get_term_by( 'name', 'Burrito', 'post_tag' );
     
    436416                $this->assertInstanceOf( 'WP_Term', $term );
    437417                $this->assertSame( $term_id, $term->term_id );
    438                 $this->assertSame( $num_queries, $wpdb->num_queries );
     418                $this->assertSame( $num_queries, get_num_queries() );
    439419
    440420                $term_meta = get_term_meta( $term_id, 'foo', true );
    441421                $num_queries++;
    442422                $this->assertSame( $term_meta, 'bar' );
    443                 $this->assertSame( $num_queries, $wpdb->num_queries );
     423                $this->assertSame( $num_queries, get_num_queries() );
    444424        }
    445425
Note: See TracChangeset for help on using the changeset viewer.