mirror of
https://github.com/gosticks/wordpress-develop.git
synced 2025-10-16 12:05:38 +00:00
* Automatically delete objects that we were created during `wpSetUpBeforeClass` - posts, comments, terms (except 1), and user (except 1) * The amount of leftover data between tests was breathtaking - use the new function: `_delete_all_data()` * Commit database transactions for all `TestCase`s, not just those that implement `wpSetUpBeforeClass` and `wpTearDownAfterClass` * The tests run 10-20 seconds faster now See #37699. git-svn-id: https://develop.svn.wordpress.org/trunk@38398 602fd350-edb4-49c9-b593-d223f7449a82
136 lines
3.7 KiB
PHP
136 lines
3.7 KiB
PHP
<?php
|
|
|
|
/**
|
|
* @group comment
|
|
*/
|
|
class Tests_Comment_GetCommentLink extends WP_UnitTestCase {
|
|
protected static $p;
|
|
protected static $comments = array();
|
|
|
|
public static function wpSetUpBeforeClass( $factory ) {
|
|
$now = time();
|
|
self::$p = self::factory()->post->create();
|
|
|
|
self::$comments[] = self::factory()->comment->create( array(
|
|
'comment_post_ID' => self::$p,
|
|
'comment_content' => '1',
|
|
'comment_date_gmt' => date( 'Y-m-d H:i:s', $now - 100 ),
|
|
) );
|
|
self::$comments[] = self::factory()->comment->create( array(
|
|
'comment_post_ID' => self::$p,
|
|
'comment_content' => '2',
|
|
'comment_date_gmt' => date( 'Y-m-d H:i:s', $now - 200 ),
|
|
) );
|
|
self::$comments[] = self::factory()->comment->create( array(
|
|
'comment_post_ID' => self::$p,
|
|
'comment_content' => '3',
|
|
'comment_date_gmt' => date( 'Y-m-d H:i:s', $now - 300 ),
|
|
) );
|
|
self::$comments[] = self::factory()->comment->create( array(
|
|
'comment_post_ID' => self::$p,
|
|
'comment_content' => '4',
|
|
'comment_date_gmt' => date( 'Y-m-d H:i:s', $now - 400 ),
|
|
) );
|
|
self::$comments[] = self::factory()->comment->create( array(
|
|
'comment_post_ID' => self::$p,
|
|
'comment_content' => '4',
|
|
'comment_date_gmt' => date( 'Y-m-d H:i:s', $now - 500 ),
|
|
) );
|
|
self::$comments[] = self::factory()->comment->create( array(
|
|
'comment_post_ID' => self::$p,
|
|
'comment_content' => '4',
|
|
'comment_date_gmt' => date( 'Y-m-d H:i:s', $now - 600 ),
|
|
) );
|
|
|
|
}
|
|
|
|
/**
|
|
* @ticket 34068
|
|
*/
|
|
public function test_default_comments_page_newest_default_page_should_have_cpage() {
|
|
update_option( 'page_comments', 1 );
|
|
update_option( 'default_comments_page', 'newest' );
|
|
update_option( 'comments_per_page', 2 );
|
|
|
|
$found = get_comment_link( self::$comments[1] );
|
|
|
|
$this->assertContains( 'cpage=3', $found );
|
|
}
|
|
|
|
/**
|
|
* @ticket 34068
|
|
*/
|
|
public function test_default_comments_page_newest_middle_page_should_have_cpage() {
|
|
update_option( 'page_comments', 1 );
|
|
update_option( 'default_comments_page', 'newest' );
|
|
update_option( 'comments_per_page', 2 );
|
|
|
|
$found = get_comment_link( self::$comments[3] );
|
|
|
|
$this->assertContains( 'cpage=2', $found );
|
|
}
|
|
|
|
/**
|
|
* @ticket 34068
|
|
*/
|
|
public function test_default_comments_page_newest_last_page_should_have_cpage() {
|
|
update_option( 'page_comments', 1 );
|
|
update_option( 'default_comments_page', 'newest' );
|
|
update_option( 'comments_per_page', 2 );
|
|
|
|
$found = get_comment_link( self::$comments[5] );
|
|
|
|
$this->assertContains( 'cpage=1', $found );
|
|
}
|
|
|
|
/**
|
|
* @ticket 34068
|
|
*/
|
|
public function test_default_comments_page_oldest_default_page_should_not_have_cpage() {
|
|
update_option( 'default_comments_page', 'oldest' );
|
|
update_option( 'comments_per_page', 2 );
|
|
|
|
$found = get_comment_link( self::$comments[5] );
|
|
|
|
$this->assertNotContains( 'cpage', $found );
|
|
}
|
|
|
|
/**
|
|
* @ticket 34068
|
|
*/
|
|
public function test_default_comments_page_oldest_middle_page_should_have_cpage() {
|
|
update_option( 'page_comments', 1 );
|
|
update_option( 'default_comments_page', 'oldest' );
|
|
update_option( 'comments_per_page', 2 );
|
|
|
|
$found = get_comment_link( self::$comments[3] );
|
|
|
|
$this->assertContains( 'cpage=2', $found );
|
|
}
|
|
|
|
/**
|
|
* @ticket 34068
|
|
*/
|
|
public function test_default_comments_page_oldest_last_page_should_have_cpage() {
|
|
update_option( 'page_comments', 1 );
|
|
update_option( 'default_comments_page', 'oldest' );
|
|
update_option( 'comments_per_page', 2 );
|
|
|
|
$found = get_comment_link( self::$comments[1] );
|
|
|
|
$this->assertContains( 'cpage=3', $found );
|
|
}
|
|
|
|
/**
|
|
* @ticket 34946
|
|
*/
|
|
public function test_should_not_contain_comment_page_1_when_pagination_is_disabled() {
|
|
$this->set_permalink_structure( '/%postname%/' );
|
|
update_option( 'page_comments', 0 );
|
|
|
|
$found = get_comment_link( self::$comments[1] );
|
|
|
|
$this->assertNotContains( 'comment-page-1', $found );
|
|
}
|
|
}
|