WordPress.org

Make WordPress Core

Changeset 708 in tests


Ignore:
Timestamp:
05/02/12 15:36:53 (2 years ago)
Author:
coffee2code
Message:

Add WP_Query tests for query vars: offset, paged, posts_per_page, and #WP18897

File:
1 edited

Legend:

Unmodified
Added
Removed
  • wp-testcase/test_query_results.php

    r511 r708  
    163163    } 
    164164 
     165    function test_query_posts_per_page() { 
     166        $posts = $this->q->query('posts_per_page=5'); 
     167 
     168        $expected = array ( 
     169            0 => 'tags-a-and-c', 
     170            1 => 'tags-b-and-c', 
     171            2 => 'tags-a-and-b', 
     172            3 => 'tag-c', 
     173            4 => 'tag-b', 
     174        ); 
     175 
     176        $this->assertEquals( 5, count($posts) ); 
     177        $this->assertEquals( $expected, $this->post_slugs($posts) ); 
     178    } 
     179 
     180    function test_query_offset() { 
     181        $posts = $this->q->query('offset=2'); 
     182 
     183        $expected = array ( 
     184            0 => 'tags-a-and-b', 
     185            1 => 'tag-c', 
     186            2 => 'tag-b', 
     187            3 => 'tag-a', 
     188            4 => 'tags-a-b-c', 
     189            5 => 'raw-html-code', 
     190            6 => 'simple-markup-test', 
     191            7 => 'embedded-video', 
     192            8 => 'contributor-post-approved', 
     193            9 => 'one-comment', 
     194        ); 
     195 
     196        $this->assertEquals( 10, count($posts) ); 
     197        $this->assertEquals( $expected, $this->post_slugs($posts) ); 
     198    } 
     199 
     200    function test_query_paged() { 
     201        $posts = $this->q->query('paged=2'); 
     202 
     203        $expected = array ( 
     204            0 => 'contributor-post-approved', 
     205            1 => 'one-comment', 
     206            2 => 'no-comments', 
     207            3 => 'many-trackbacks', 
     208            4 => 'one-trackback', 
     209            5 => 'comment-test', 
     210            6 => 'lorem-ipsum', 
     211            7 => 'cat-c', 
     212            8 => 'cat-b', 
     213            9 => 'cat-a', 
     214        ); 
     215 
     216        $this->assertEquals( 10, count($posts) ); 
     217        $this->assertTrue( $this->q->is_paged() ); 
     218        $this->assertEquals( $expected, $this->post_slugs($posts) ); 
     219    } 
     220 
     221    function test_query_paged_and_posts_per_page() { 
     222        $posts = $this->q->query('paged=4&posts_per_page=4'); 
     223 
     224        $expected = array ( 
     225            0 => 'no-comments', 
     226            1 => 'many-trackbacks', 
     227            2 => 'one-trackback', 
     228            3 => 'comment-test', 
     229        ); 
     230 
     231        $this->assertEquals( 4, count($posts) ); 
     232        $this->assertTrue( $this->q->is_paged() ); 
     233        $this->assertEquals( $expected, $this->post_slugs($posts) ); 
     234    } 
     235 
     236    function test_query_offset_and_paged() { 
     237        $this->knownWPBug(18897); 
     238 
     239        $posts = $this->q->query('paged=2&offset=3'); 
     240 
     241        $expected = array ( 
     242            0 => 'many-trackbacks', 
     243            1 => 'one-trackback', 
     244            2 => 'comment-test', 
     245            3 => 'lorem-ipsum', 
     246            4 => 'cat-c', 
     247            5 => 'cat-b', 
     248            6 => 'cat-a', 
     249            7 => 'cats-a-and-c', 
     250            8 => 'cats-b-and-c', 
     251            9 => 'cats-a-and-b', 
     252        ); 
     253 
     254        $this->assertEquals( 10, count($posts) ); 
     255        $this->assertTrue( $this->q->is_paged() ); 
     256        $this->assertEquals( $expected, $this->post_slugs($posts) ); 
     257    } 
    165258 
    166259} 
Note: See TracChangeset for help on using the changeset viewer.