Make WordPress Core

Ticket #38234: 38234.2.patch

File 38234.2.patch, 1.5 KB (added by choongsavvii, 10 years ago)
  • src/wp-includes/user.php

     
    24402440        }
    24412441
    24422442        $prefix = $wpdb->get_blog_prefix();
    2443         $regex  = implode( '|', wp_roles()->get_names() );
     2443        $regex  = implode( '|', array_keys( wp_roles()->get_names() ) );
    24442444        $regex  = preg_replace( '/[^a-zA-Z_\|-]/', '', $regex );
    24452445        $users  = $wpdb->get_col( $wpdb->prepare( "
    24462446                SELECT user_id
  • tests/phpunit/tests/user/wpGetUsersWithNoRole.php

     
    66class Tests_User_GetUsersWithNoRole extends WP_UnitTestCase {
    77
    88        /**
     9         * Role comparison must be done on role name, not role display name.
     10         *
     11         * @ticket 38234
     12         */
     13        public function test_get_users_with_no_role_matches_on_role_name() {
     14                // Create a role with a display name which would not match the role name
     15                // in a case-insentive SQL query.
     16                global $wp_roles;
     17                $wp_roles->add_role( 'somerole', 'Some role display name' );
     18
     19                $someuser = self::factory()->user->create( array(
     20                        'role' => 'somerole',
     21                ) );
     22
     23                $users = wp_get_users_with_no_role();
     24
     25                $this->assertEquals( array(), $users );
     26        }
     27
     28        /**
    929         * @ticket 22993
    1030         */
    1131        public function test_get_users_with_no_role_is_accurate() {