wordpress-develop/tests/phpunit/tests/comment/getCommentCount.php
Scott Taylor 3028a096be Comments: wp_count_comments() can use get_comment_count() internally to makes its DB query, provided that get_comment_count() returns more properties.
Adds/updates unit tests. There were zero (0) unit tests for `wp_count_comments()`.

Fixes #19903. 


git-svn-id: https://develop.svn.wordpress.org/trunk@33822 602fd350-edb4-49c9-b593-d223f7449a82
2015-08-31 18:50:12 +00:00

91 lines
2.7 KiB
PHP

<?php
class Tests_Get_Comment_Count extends WP_UnitTestCase {
public function test_get_comment_count() {
$count = get_comment_count();
$this->assertEquals( 0, $count['approved'] );
$this->assertEquals( 0, $count['awaiting_moderation'] );
$this->assertEquals( 0, $count['spam'] );
$this->assertEquals( 0, $count['trash'] );
$this->assertEquals( 0, $count['post-trashed'] );
$this->assertEquals( 0, $count['total_comments'] );
}
public function test_get_comment_count_approved() {
$this->factory->comment->create( array(
'comment_approved' => 1
) );
$count = get_comment_count();
$this->assertEquals( 1, $count['approved'] );
$this->assertEquals( 0, $count['awaiting_moderation'] );
$this->assertEquals( 0, $count['spam'] );
$this->assertEquals( 0, $count['trash'] );
$this->assertEquals( 0, $count['post-trashed'] );
$this->assertEquals( 1, $count['total_comments'] );
}
public function test_get_comment_count_awaiting() {
$this->factory->comment->create( array(
'comment_approved' => 0
) );
$count = get_comment_count();
$this->assertEquals( 0, $count['approved'] );
$this->assertEquals( 1, $count['awaiting_moderation'] );
$this->assertEquals( 0, $count['spam'] );
$this->assertEquals( 0, $count['trash'] );
$this->assertEquals( 0, $count['post-trashed'] );
$this->assertEquals( 1, $count['total_comments'] );
}
public function test_get_comment_count_spam() {
$this->factory->comment->create( array(
'comment_approved' => 'spam'
) );
$count = get_comment_count();
$this->assertEquals( 0, $count['approved'] );
$this->assertEquals( 0, $count['awaiting_moderation'] );
$this->assertEquals( 1, $count['spam'] );
$this->assertEquals( 0, $count['trash'] );
$this->assertEquals( 0, $count['post-trashed'] );
$this->assertEquals( 1, $count['total_comments'] );
}
public function test_get_comment_count_trash() {
$this->factory->comment->create( array(
'comment_approved' => 'trash'
) );
$count = get_comment_count();
$this->assertEquals( 0, $count['approved'] );
$this->assertEquals( 0, $count['awaiting_moderation'] );
$this->assertEquals( 0, $count['spam'] );
$this->assertEquals( 1, $count['trash'] );
$this->assertEquals( 0, $count['post-trashed'] );
$this->assertEquals( 0, $count['total_comments'] );
}
public function test_get_comment_count_post_trashed() {
$this->factory->comment->create( array(
'comment_approved' => 'post-trashed'
) );
$count = get_comment_count();
$this->assertEquals( 0, $count['approved'] );
$this->assertEquals( 0, $count['awaiting_moderation'] );
$this->assertEquals( 0, $count['spam'] );
$this->assertEquals( 0, $count['trash'] );
$this->assertEquals( 1, $count['post-trashed'] );
$this->assertEquals( 0, $count['total_comments'] );
}
}