Skip to:
Content

bbPress.org

Ticket #2702: 2702.tests.diff

File 2702.tests.diff, 3.5 KB (added by tharsheblows, 9 years ago)

unit tests for replies and topics pagination

  • tests/phpunit/testcases/replies/template/loop.php

     
    2121        }
    2222
    2323        /**
     24     * @ticket BBP2702
     25     */
     26        public function test_replies_pagination_when_pages_are_greater_than_nine() {
     27
     28                $bbp = bbpress();
     29
     30                if ( is_multisite() ) {
     31                        $this->markTestSkipped( 'Skipping URL tests in multiste for now.' );
     32                }
     33
     34                $f = $this->factory->forum->create();
     35                $t = $this->factory->topic->create( array(
     36                        'post_parent' => $f,
     37                        'topic_meta' => array(
     38                                'forum_id' => $f,
     39                        ),
     40                ) );
     41
     42                $r = $this->factory->reply->create_many( 15, array(
     43                        'post_parent' => $t,
     44                        'reply_meta' => array(
     45                                'forum_id' => $f,
     46                                'topic_id' => $t,
     47                        ),
     48                ) );
     49
     50                // Default query args from bbp_has_replies are going to be used as the args
     51                $args = array(
     52                        'posts_per_page' => 1,          // use 1 per page for testing
     53                );
     54
     55                $request_uri = $_SERVER['REQUEST_URI'];
     56            $_SERVER['REQUEST_URI'] = add_query_arg( 'topic=' . $t, '', $request_uri );
     57
     58            // test unpretty permalinks (default)
     59                bbp_has_replies( $args );
     60
     61                $paged_link = $_SERVER['REQUEST_URI'] . '&paged=';
     62                $page2 = $paged_link . '2';
     63                $page16 = $paged_link . '16';
     64
     65                $expected =<<<EXPECTED
     66<span class='page-numbers current'>1</span>
     67<a class='page-numbers' href='$page2'>2</a>
     68<span class="page-numbers dots">&hellip;</span>
     69<a class='page-numbers' href='$page16'>16</a>
     70<a class="next page-numbers" href="$page2">&rarr;</a>
     71EXPECTED;
     72
     73                $links = bbp_get_topic_pagination_links();
     74                $this->assertEquals( $expected, $links );
     75
     76                $_SERVER['REQUEST_URI'] = $request_uri;
     77
     78        }
     79
     80
     81        /**
    2482         * @covers ::bbp_replies
    2583         * @todo   Implement test_bbp_replies().
    2684         */
  • tests/phpunit/testcases/topics/template/loop.php

     
    2121        }
    2222
    2323        /**
     24     * @ticket BBP2702
     25     */
     26        public function test_topics_pagination_when_pages_are_greater_than_nine() {
     27
     28                $bbp = bbpress();
     29
     30                if ( is_multisite() ) {
     31                        $this->markTestSkipped( 'Skipping URL tests in multiste for now.' );
     32                }
     33
     34                $f = $this->factory->forum->create();
     35                $t = $this->factory->topic->create_many( 15, array(
     36                        'post_parent' => $f,
     37                        'topic_meta' => array(
     38                                'forum_id' => $f,
     39                        ),
     40                ) );
     41
     42                // Default query args from bbp_has_replies are going to be used as the args
     43                $args = array(
     44                        'posts_per_page' => 1,          // use 1 per page for testing
     45                );
     46
     47                $request_uri = $_SERVER['REQUEST_URI'];
     48            $_SERVER['REQUEST_URI'] = add_query_arg( 'forum=' . $f, '', $request_uri );
     49
     50            // test unpretty permalinks (default)
     51                bbp_has_replies( $args );
     52
     53                $paged_link = $_SERVER['REQUEST_URI'] . '&#038;paged=';
     54                $page2 = $paged_link . '2';
     55                $page15 = $paged_link . '15';
     56
     57                $expected =<<<EXPECTED
     58<span class='page-numbers current'>1</span>
     59<a class='page-numbers' href='$page2'>2</a>
     60<span class="page-numbers dots">&hellip;</span>
     61<a class='page-numbers' href='$page15'>15</a>
     62<a class="next page-numbers" href="$page2">&rarr;</a>
     63EXPECTED;
     64
     65                $links = bbp_get_topic_pagination_links();
     66                $this->assertEquals( $expected, $links );
     67
     68                $_SERVER['REQUEST_URI'] = $request_uri;
     69
     70        }
     71
     72        /**
    2473         * @covers ::bbp_topics
    2574         * @todo   Implement test_bbp_topics().
    2675         */