WordPress.org

Make WordPress Core


Ignore:
Timestamp:
11/19/2015 05:10:47 PM (4 years ago)
Author:
johnbillion
Message:

Ensure the count for users with no role remains accurate when users with multiple roles are present.

See #34495

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/tests/phpunit/tests/user/countUsers.php

    r35242 r35707  
    141141    }
    142142
     143    /**
     144     * @ticket 34495
     145     *
     146     * @dataProvider data_count_users_strategies
     147     */
     148    public function test_count_users_is_accurate_with_multiple_roles( $strategy ) {
     149
     150        // Setup users
     151        $admin = self::factory()->user->create( array(
     152            'role' => 'administrator',
     153        ) );
     154        $editor = self::factory()->user->create( array(
     155            'role' => 'editor',
     156        ) );
     157
     158        get_userdata( $editor )->add_role( 'author' );
     159
     160        $this->assertEquals( array(
     161            'editor',
     162            'author'
     163        ), get_userdata( $editor )->roles );
     164
     165        // Test user counts
     166        $count = count_users( $strategy );
     167
     168        $this->assertEquals( 3, $count['total_users'] );
     169        $this->assertEquals( array(
     170            'administrator' => 2,
     171            'editor'        => 1,
     172            'author'        => 1,
     173            'none'          => 0,
     174        ), $count['avail_roles'] );
     175
     176    }
     177
    143178    function data_count_users_strategies() {
    144179        return array(
Note: See TracChangeset for help on using the changeset viewer.