Skip to:
Content

BuddyPress.org


Ignore:
Timestamp:
09/06/2016 07:34:00 PM (8 years ago)
Author:
boonebgorges
Message:

Bail early if an array containing only 0 is passed to 'include' in user queries.

When 'include' is [ 0 ] or [ '0' ]`, there's no reason to run a costly
SQL query - we can immediately report no results.

Fixes #7248.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/tests/phpunit/testcases/core/class-bp-user-query.php

    r10043 r11067  
    6868
    6969    /**
     70     * @ticket BP7248
     71     */
     72    public function test_include_array_contaning_only_0_should_result_in_no_results_query() {
     73        $q = new BP_User_Query( array(
     74            'include' => array( 0 ),
     75        ) );
     76
     77        $this->assertContains( '0 = 1', $q->uid_clauses['where'] );
     78    }
     79
     80    /**
     81     * @ticket BP7248
     82     */
     83    public function test_include_array_contaning_0_but_also_real_IDs_should_not_result_in_no_results_query() {
     84        $q = new BP_User_Query( array(
     85            'include' => array( 0, 1 ),
     86        ) );
     87
     88        $this->assertNotContains( '0 = 1', $q->uid_clauses['where'] );
     89    }
     90
     91    /**
    7092     * @group user_ids
    7193     */
Note: See TracChangeset for help on using the changeset viewer.