Make WordPress Core


Ignore:
Timestamp:
11/30/2017 11:09:33 PM (9 years ago)
Author:
pento
Message:

Code is Poetry.
WordPress' code just... wasn't.
This is now dealt with.

Props jrf, pento, netweb, GaryJ, jdgrimes, westonruter, Greg Sherwood from PHPCS, and everyone who's ever contributed to WPCS and PHPCS.
Fixes #41057.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/tests/phpunit/tests/multisite/siteDetails.php

    r41883 r42343  
    22
    33if ( is_multisite() ) :
    4 /**
    5  * Test 'site_details' functionality.
    6  *
    7  * @group ms-site
    8  * @group multisite
    9  */
    10 class Tests_Multisite_Site_Details extends WP_UnitTestCase {
    114        /**
    12          * @dataProvider data_whitelisted_options
     5         * Test 'site_details' functionality.
    136         *
    14          * @ticket 40063
     7         * @group ms-site
     8         * @group multisite
    159         */
    16         public function test_update_whitelisted_option_deletes_site_details_cache( $whitelisted_option, $temporary_value ) {
    17                 $site = get_site();
     10        class Tests_Multisite_Site_Details extends WP_UnitTestCase {
     11                /**
     12                 * @dataProvider data_whitelisted_options
     13                 *
     14                 * @ticket 40063
     15                 */
     16                public function test_update_whitelisted_option_deletes_site_details_cache( $whitelisted_option, $temporary_value ) {
     17                        $site = get_site();
    1818
    19                 $original_value = $site->$whitelisted_option;
    20                 update_option( $whitelisted_option, $temporary_value );
     19                        $original_value = $site->$whitelisted_option;
     20                        update_option( $whitelisted_option, $temporary_value );
    2121
    22                 $cached_result = wp_cache_get( $site->id, 'site-details' );
     22                        $cached_result = wp_cache_get( $site->id, 'site-details' );
    2323
    24                 /* Reset to original value. */
    25                 update_option( $whitelisted_option, $original_value );
     24                        /* Reset to original value. */
     25                        update_option( $whitelisted_option, $original_value );
    2626
    27                 $this->assertFalse( $cached_result );
     27                        $this->assertFalse( $cached_result );
     28                }
     29
     30                /**
     31                 * @dataProvider data_whitelisted_options
     32                 *
     33                 * @ticket 40063
     34                 */
     35                public function test_update_whitelisted_option_deletes_blog_details_cache( $whitelisted_option, $temporary_value ) {
     36                        $blog_details = get_blog_details();
     37
     38                        $original_value = $blog_details->$whitelisted_option;
     39                        update_option( $whitelisted_option, $temporary_value );
     40
     41                        $cached_result = wp_cache_get( $blog_details->id, 'blog-details' );
     42
     43                        /* Reset to original value. */
     44                        update_option( $whitelisted_option, $original_value );
     45
     46                        $this->assertFalse( $cached_result );
     47                }
     48
     49                /**
     50                 * @dataProvider data_whitelisted_options
     51                 *
     52                 * @ticket 40063
     53                 */
     54                public function test_update_whitelisted_option_does_not_delete_site_cache( $whitelisted_option, $temporary_value ) {
     55                        $site = get_site();
     56
     57                        $original_value = $site->$whitelisted_option;
     58                        update_option( $whitelisted_option, $temporary_value );
     59
     60                        $cached_result = wp_cache_get( $site->id, 'sites' );
     61
     62                        /* Reset to original value. */
     63                        update_option( $whitelisted_option, $original_value );
     64
     65                        $this->assertNotFalse( $cached_result );
     66                }
     67
     68                /**
     69                 * @dataProvider data_whitelisted_options
     70                 *
     71                 * @ticket 40063
     72                 */
     73                public function test_update_whitelisted_option_does_not_delete_short_blog_details_cache( $whitelisted_option, $temporary_value ) {
     74                        $blog_details = get_blog_details( null, false );
     75
     76                        $original_value = get_option( $whitelisted_option );
     77                        update_option( $whitelisted_option, $temporary_value );
     78
     79                        $cached_result = wp_cache_get( $blog_details->id . 'short', 'blog-details' );
     80
     81                        /* Reset to original value. */
     82                        update_option( $whitelisted_option, $original_value );
     83
     84                        $this->assertNotFalse( $cached_result );
     85                }
     86
     87                /**
     88                 * @dataProvider data_whitelisted_options
     89                 *
     90                 * @ticket 40063
     91                 */
     92                public function test_update_whitelisted_option_does_not_update_sites_last_changed( $whitelisted_option, $temporary_value ) {
     93                        $last_changed = wp_cache_get_last_changed( 'sites' );
     94
     95                        $original_value = get_option( $whitelisted_option );
     96                        update_option( $whitelisted_option, $temporary_value );
     97
     98                        $new_last_changed = wp_cache_get_last_changed( 'sites' );
     99
     100                        /* Reset to original value. */
     101                        update_option( $whitelisted_option, $original_value );
     102
     103                        $this->assertSame( $new_last_changed, $last_changed );
     104                }
     105
     106                public function data_whitelisted_options() {
     107                        return array(
     108                                array( 'blogname', 'Custom Site' ),
     109                                array( 'home', 'http://custom-site-url.org' ),
     110                                array( 'siteurl', 'http://custom-site-url.org' ),
     111                                array( 'post_count', '4' ),
     112                        );
     113                }
     114
     115                /**
     116                 * @ticket 40063
     117                 */
     118                public function test_update_random_blog_option_does_not_delete_cache() {
     119                        $site = get_site();
     120
     121                        update_option( 'foobar_option', 'foobar_value' );
     122                        $cached_result = wp_cache_get( $site->id, 'sites' );
     123
     124                        delete_option( 'foobar_option' );
     125
     126                        $this->assertNotFalse( $cached_result );
     127                }
     128
     129                /**
     130                 * @ticket 40247
     131                 */
     132                public function test_site_details_cached_including_false_values() {
     133                        $id = self::factory()->blog->create();
     134
     135                        $site = get_site( $id );
     136
     137                        // Trigger retrieving site details (post_count is not set on new sites)
     138                        $post_count = $site->post_count;
     139
     140                        $cached_details = wp_cache_get( $site->id, 'site-details' );
     141
     142                        wpmu_delete_blog( $id, true );
     143                        wp_update_network_site_counts();
     144
     145                        $this->assertNotFalse( $cached_details );
     146                }
     147
     148                public function test_site_details_filter_with_blogname() {
     149                        add_filter( 'site_details', array( $this, '_filter_site_details_blogname' ) );
     150                        $site     = get_site();
     151                        $blogname = $site->blogname;
     152                        remove_filter( 'site_details', array( $this, '_filter_site_details_blogname' ) );
     153
     154                        $this->assertSame( 'Foo Bar', $blogname );
     155                }
     156
     157                public function _filter_site_details_blogname( $details ) {
     158                        $details->blogname = 'Foo Bar';
     159                        return $details;
     160                }
     161
     162                /**
     163                 * @ticket 40458
     164                 */
     165                public function test_site_details_filter_with_custom_value_isetter() {
     166                        add_filter( 'site_details', array( $this, '_filter_site_details_custom_value' ) );
     167                        $site               = get_site();
     168                        $custom_value_isset = isset( $site->custom_value );
     169                        remove_filter( 'site_details', array( $this, '_filter_site_details_custom_value' ) );
     170
     171                        $this->assertTrue( $custom_value_isset );
     172                }
     173
     174                /**
     175                 * @ticket 40458
     176                 */
     177                public function test_site_details_filter_with_custom_value_getter() {
     178                        add_filter( 'site_details', array( $this, '_filter_site_details_custom_value' ) );
     179                        $site         = get_site();
     180                        $custom_value = $site->custom_value;
     181                        remove_filter( 'site_details', array( $this, '_filter_site_details_custom_value' ) );
     182
     183                        $this->assertSame( 'foo', $custom_value );
     184                }
     185
     186                public function _filter_site_details_custom_value( $details ) {
     187                        $details->custom_value = 'foo';
     188                        return $details;
     189                }
    28190        }
    29191
    30         /**
    31          * @dataProvider data_whitelisted_options
    32          *
    33          * @ticket 40063
    34          */
    35         public function test_update_whitelisted_option_deletes_blog_details_cache( $whitelisted_option, $temporary_value ) {
    36                 $blog_details = get_blog_details();
    37 
    38                 $original_value = $blog_details->$whitelisted_option;
    39                 update_option( $whitelisted_option, $temporary_value );
    40 
    41                 $cached_result = wp_cache_get( $blog_details->id, 'blog-details' );
    42 
    43                 /* Reset to original value. */
    44                 update_option( $whitelisted_option, $original_value );
    45 
    46                 $this->assertFalse( $cached_result );
    47         }
    48 
    49         /**
    50          * @dataProvider data_whitelisted_options
    51          *
    52          * @ticket 40063
    53          */
    54         public function test_update_whitelisted_option_does_not_delete_site_cache( $whitelisted_option, $temporary_value ) {
    55                 $site = get_site();
    56 
    57                 $original_value = $site->$whitelisted_option;
    58                 update_option( $whitelisted_option, $temporary_value );
    59 
    60                 $cached_result = wp_cache_get( $site->id, 'sites' );
    61 
    62                 /* Reset to original value. */
    63                 update_option( $whitelisted_option, $original_value );
    64 
    65                 $this->assertNotFalse( $cached_result );
    66         }
    67 
    68         /**
    69          * @dataProvider data_whitelisted_options
    70          *
    71          * @ticket 40063
    72          */
    73         public function test_update_whitelisted_option_does_not_delete_short_blog_details_cache( $whitelisted_option, $temporary_value ) {
    74                 $blog_details = get_blog_details( null, false );
    75 
    76                 $original_value = get_option( $whitelisted_option );
    77                 update_option( $whitelisted_option, $temporary_value );
    78 
    79                 $cached_result = wp_cache_get( $blog_details->id . 'short', 'blog-details' );
    80 
    81                 /* Reset to original value. */
    82                 update_option( $whitelisted_option, $original_value );
    83 
    84                 $this->assertNotFalse( $cached_result );
    85         }
    86 
    87         /**
    88          * @dataProvider data_whitelisted_options
    89          *
    90          * @ticket 40063
    91          */
    92         public function test_update_whitelisted_option_does_not_update_sites_last_changed( $whitelisted_option, $temporary_value ) {
    93                 $last_changed = wp_cache_get_last_changed( 'sites' );
    94 
    95                 $original_value = get_option( $whitelisted_option );
    96                 update_option( $whitelisted_option, $temporary_value );
    97 
    98                 $new_last_changed = wp_cache_get_last_changed( 'sites' );
    99 
    100                 /* Reset to original value. */
    101                 update_option( $whitelisted_option, $original_value );
    102 
    103                 $this->assertSame( $new_last_changed, $last_changed );
    104         }
    105 
    106         public function data_whitelisted_options() {
    107                 return array(
    108                         array( 'blogname', 'Custom Site' ),
    109                         array( 'home', 'http://custom-site-url.org' ),
    110                         array( 'siteurl', 'http://custom-site-url.org' ),
    111                         array( 'post_count', '4' ),
    112                 );
    113         }
    114 
    115         /**
    116          * @ticket 40063
    117          */
    118         public function test_update_random_blog_option_does_not_delete_cache() {
    119                 $site = get_site();
    120 
    121                 update_option( 'foobar_option', 'foobar_value' );
    122                 $cached_result = wp_cache_get( $site->id, 'sites' );
    123 
    124                 delete_option( 'foobar_option' );
    125 
    126                 $this->assertNotFalse( $cached_result );
    127         }
    128 
    129         /**
    130          * @ticket 40247
    131          */
    132         public function test_site_details_cached_including_false_values() {
    133                 $id = self::factory()->blog->create();
    134 
    135                 $site = get_site( $id );
    136 
    137                 // Trigger retrieving site details (post_count is not set on new sites)
    138                 $post_count = $site->post_count;
    139 
    140                 $cached_details = wp_cache_get( $site->id, 'site-details' );
    141 
    142                 wpmu_delete_blog( $id, true );
    143                 wp_update_network_site_counts();
    144 
    145                 $this->assertNotFalse( $cached_details );
    146         }
    147 
    148         public function test_site_details_filter_with_blogname() {
    149                 add_filter( 'site_details', array( $this, '_filter_site_details_blogname' ) );
    150                 $site = get_site();
    151                 $blogname = $site->blogname;
    152                 remove_filter( 'site_details', array( $this, '_filter_site_details_blogname' ) );
    153 
    154                 $this->assertSame( 'Foo Bar', $blogname );
    155         }
    156 
    157         public function _filter_site_details_blogname( $details ) {
    158                 $details->blogname = 'Foo Bar';
    159                 return $details;
    160         }
    161 
    162         /**
    163          * @ticket 40458
    164          */
    165         public function test_site_details_filter_with_custom_value_isetter() {
    166                 add_filter( 'site_details', array( $this, '_filter_site_details_custom_value' ) );
    167                 $site = get_site();
    168                 $custom_value_isset = isset( $site->custom_value );
    169                 remove_filter( 'site_details', array( $this, '_filter_site_details_custom_value' ) );
    170 
    171                 $this->assertTrue( $custom_value_isset );
    172         }
    173 
    174         /**
    175          * @ticket 40458
    176          */
    177         public function test_site_details_filter_with_custom_value_getter() {
    178                 add_filter( 'site_details', array( $this, '_filter_site_details_custom_value' ) );
    179                 $site = get_site();
    180                 $custom_value = $site->custom_value;
    181                 remove_filter( 'site_details', array( $this, '_filter_site_details_custom_value' ) );
    182 
    183                 $this->assertSame( 'foo', $custom_value );
    184         }
    185 
    186         public function _filter_site_details_custom_value( $details ) {
    187                 $details->custom_value = 'foo';
    188                 return $details;
    189         }
    190 }
    191 
    192192endif;
Note: See TracChangeset for help on using the changeset viewer.