Make WordPress Core


Ignore:
Timestamp:
01/24/2018 01:20:24 AM (9 years ago)
Author:
jorbin
Message:

Query: Fix warning on counting non countable

Adds tests to continue the behavior for both null and strings.

See ​https://wiki.php.net/rfc/counting_non_countables for information on the PHP change.

Fixes #42860.
Props janak007 and ayeshrajans for initial patches.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/tests/phpunit/tests/post/query.php

    r42343 r42581  
    643643                $this->assertEquals( 2, $q->max_num_pages );
    644644        }
     645
     646        /**
     647         * @ticket 42860
     648         */
     649        public function test_set_found_posts_fields_posts_is_string() {
     650                $q = new WP_Query(
     651                        array(
     652                                'post_type'      => 'wptests_pt',
     653                                'posts_per_page' => 1,
     654                        )
     655                );
     656
     657                $q->posts = "To life, to life, l'chaim";
     658
     659                $methd = new \ReflectionMethod( 'WP_Query', 'set_found_posts' );
     660                $methd->setAccessible( true );
     661                $methd->invoke( $q, array( 'no_found_rows' => false ), array() );
     662
     663                $this->assertEquals( 1, $q->found_posts );
     664        }
     665
     666        /**
     667         * @ticket 42860
     668         */
     669        public function test_set_found_posts_fields_posts_is_null() {
     670                $q = new WP_Query(
     671                        array(
     672                                'post_type'      => 'wptests_pt',
     673                                'posts_per_page' => 1,
     674                        )
     675                );
     676
     677                $q->posts = null;
     678
     679                $methd = new \ReflectionMethod( 'WP_Query', 'set_found_posts' );
     680                $methd->setAccessible( true );
     681                $methd->invoke( $q, array( 'no_found_rows' => false ), array() );
     682
     683                $this->assertEquals( 0, $q->found_posts );
     684        }
     685
    645686}
Note: See TracChangeset for help on using the changeset viewer.