| | 1 | <?php |
| | 2 | /** |
| | 3 | * Test WP_User Query, in wp-includes/user.php |
| | 4 | * |
| | 5 | * @group user |
| | 6 | */ |
| | 7 | class Tests_WP_User_Query extends WP_UnitTestCase { |
| | 8 | |
| | 9 | protected $user_id; |
| | 10 | |
| | 11 | function setUp() { |
| | 12 | parent::setUp(); |
| | 13 | |
| | 14 | $this->user_id = $this->factory->user->create( array( |
| | 15 | 'role' => 'author' |
| | 16 | ) ); |
| | 17 | } |
| | 18 | |
| | 19 | function test_get_and_set() { |
| | 20 | $users = new WP_User_Query(); |
| | 21 | |
| | 22 | $users->set( 'fields', 'all' ); |
| | 23 | $this->assertEquals( $users->get( 'fields' ), 'all' ); |
| | 24 | |
| | 25 | $users->set( 'fields', '' ); |
| | 26 | $this->assertEquals( $users->get( 'fields' ), '' ); |
| | 27 | } |
| | 28 | |
| | 29 | function test_include() { |
| | 30 | $users = new WP_User_Query(); |
| | 31 | $users->set( 'fields', '' ); |
| | 32 | $users->set( 'include', $this->user_id ); |
| | 33 | $users->prepare_query(); |
| | 34 | $users->query(); |
| | 35 | |
| | 36 | $ids = $users->get_results(); |
| | 37 | $this->assertTrue( in_array( $this->user_id, $ids ) ); |
| | 38 | } |
| | 39 | |
| | 40 | function test_exclude() { |
| | 41 | $users = new WP_User_Query(); |
| | 42 | $users->set( 'fields', '' ); |
| | 43 | $users->set( 'exclude', $this->user_id ); |
| | 44 | $users->prepare_query(); |
| | 45 | $users->query(); |
| | 46 | |
| | 47 | $ids = $users->get_results(); |
| | 48 | $this->assertTrue( empty( $ids ) || ! in_array( $this->user_id, $ids ) ); |
| | 49 | } |
| | 50 | } |