Add tests for the conversion of 'meta_*' query vars to `$meta_query` objects in all query classes.

See #31265.

git-svn-id: https://develop.svn.wordpress.org/trunk@31666 602fd350-edb4-49c9-b593-d223f7449a82
This commit is contained in:
Boone Gorges 2015-03-07 16:34:50 +00:00
parent abbbde190c
commit 0fb3e2566f
3 changed files with 43 additions and 0 deletions

View File

@ -1351,6 +1351,21 @@ class Tests_Comment_Query extends WP_UnitTestCase {
$this->assertEquals( $comments, wp_list_pluck( $found, 'comment_ID' ) );
}
public function test_meta_vars_should_be_converted_to_meta_query() {
$q = new WP_Comment_Query();
$q->query( array(
'meta_key' => 'foo',
'meta_value' => '5',
'meta_compare' => '>',
'meta_type' => 'SIGNED',
) );
$this->assertSame( 'foo', $q->meta_query->queries[0]['key'] );
$this->assertSame( '5', $q->meta_query->queries[0]['value'] );
$this->assertSame( '>', $q->meta_query->queries[0]['compare'] );
$this->assertSame( 'SIGNED', $q->meta_query->queries[0]['type'] );
}
public function test_count() {
$c1 = $this->factory->comment->create( array( 'comment_post_ID' => $this->post_id, 'user_id' => 7 ) );
$c2 = $this->factory->comment->create( array( 'comment_post_ID' => $this->post_id, 'user_id' => 7 ) );

View File

@ -1208,6 +1208,20 @@ class Tests_Query_MetaQuery extends WP_UnitTestCase {
$this->assertEqualSets( array( $post_4, $post_3, $post_2, $post_1 ), $query->posts );
}
public function test_meta_vars_should_be_converted_to_meta_query() {
$q = new WP_Query( array(
'meta_key' => 'foo',
'meta_value' => '5',
'meta_compare' => '>',
'meta_type' => 'SIGNED',
) );
$this->assertSame( 'foo', $q->meta_query->queries[0]['key'] );
$this->assertSame( '5', $q->meta_query->queries[0]['value'] );
$this->assertSame( '>', $q->meta_query->queries[0]['compare'] );
$this->assertSame( 'SIGNED', $q->meta_query->queries[0]['type'] );
}
/**
* @ticket 29604
*/

View File

@ -354,6 +354,20 @@ class Tests_User_Query extends WP_UnitTestCase {
$this->assertEquals( $_query_vars, $query->query_vars );
}
public function test_meta_vars_should_be_converted_to_meta_query() {
$q = new WP_User_Query( array(
'meta_key' => 'foo',
'meta_value' => '5',
'meta_compare' => '>',
'meta_type' => 'SIGNED',
) );
$this->assertSame( 'foo', $q->meta_query->queries[0]['key'] );
$this->assertSame( '5', $q->meta_query->queries[0]['value'] );
$this->assertSame( '>', $q->meta_query->queries[0]['compare'] );
$this->assertSame( 'SIGNED', $q->meta_query->queries[0]['type'] );
}
/**
* @ticket 23849
*/