Make WordPress Core

Changeset 47526


Ignore:
Timestamp:
03/28/2020 08:42:31 PM (5 years ago)
Author:
johnbillion
Message:

Comments: Ensure all elements in the array returned by get_comment_count() are integers.

Previously elements would be a mixture of strings and integers depending on their numeric value.

Props progremzion, m.usama.masood

Fixes #48093

Location:
trunk
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/wp-includes/comment.php

    r47397 r47526  
    369369 *     The number of comments keyed by their status.
    370370 *
    371  *     @type int|string $approved            The number of approved comments.
    372  *     @type int|string $awaiting_moderation The number of comments awaiting moderation (a.k.a. pending).
    373  *     @type int|string $spam                The number of spam comments.
    374  *     @type int|string $trash               The number of trashed comments.
    375  *     @type int|string $post-trashed        The number of comments for posts that are in the trash.
    376  *     @type int        $total_comments      The total number of non-trashed comments, including spam.
    377  *     @type int        $all                 The total number of pending or approved comments.
     371 *     @type int $approved            The number of approved comments.
     372 *     @type int $awaiting_moderation The number of comments awaiting moderation (a.k.a. pending).
     373 *     @type int $spam                The number of spam comments.
     374 *     @type int $trash               The number of trashed comments.
     375 *     @type int $post-trashed        The number of comments for posts that are in the trash.
     376 *     @type int $total_comments      The total number of non-trashed comments, including spam.
     377 *     @type int $all                 The total number of pending or approved comments.
    378378 * }
    379379 */
     
    435435    }
    436436
    437     return $comment_count;
     437    return array_map( 'intval', $comment_count );
    438438}
    439439
     
    13221322 *     The number of comments keyed by their status.
    13231323 *
    1324  *     @type int|string $approved       The number of approved comments.
    1325  *     @type int|string $moderated      The number of comments awaiting moderation (a.k.a. pending).
    1326  *     @type int|string $spam           The number of spam comments.
    1327  *     @type int|string $trash          The number of trashed comments.
    1328  *     @type int|string $post-trashed   The number of comments for posts that are in the trash.
    1329  *     @type int        $total_comments The total number of non-trashed comments, including spam.
    1330  *     @type int        $all            The total number of pending or approved comments.
     1324 *     @type int $approved       The number of approved comments.
     1325 *     @type int $moderated      The number of comments awaiting moderation (a.k.a. pending).
     1326 *     @type int $spam           The number of spam comments.
     1327 *     @type int $trash          The number of trashed comments.
     1328 *     @type int $post-trashed   The number of comments for posts that are in the trash.
     1329 *     @type int $total_comments The total number of non-trashed comments, including spam.
     1330 *     @type int $all            The total number of pending or approved comments.
    13311331 * }
    13321332 */
  • trunk/tests/phpunit/tests/comment/getCommentCount.php

    r46586 r47526  
    66        $count = get_comment_count();
    77
    8         $this->assertEquals( 0, $count['approved'] );
    9         $this->assertEquals( 0, $count['awaiting_moderation'] );
    10         $this->assertEquals( 0, $count['spam'] );
    11         $this->assertEquals( 0, $count['trash'] );
    12         $this->assertEquals( 0, $count['post-trashed'] );
    13         $this->assertEquals( 0, $count['total_comments'] );
     8        $this->assertSame( 0, $count['approved'] );
     9        $this->assertSame( 0, $count['awaiting_moderation'] );
     10        $this->assertSame( 0, $count['spam'] );
     11        $this->assertSame( 0, $count['trash'] );
     12        $this->assertSame( 0, $count['post-trashed'] );
     13        $this->assertSame( 0, $count['total_comments'] );
    1414    }
    1515
     
    2323        $count = get_comment_count();
    2424
    25         $this->assertEquals( 1, $count['approved'] );
    26         $this->assertEquals( 0, $count['awaiting_moderation'] );
    27         $this->assertEquals( 0, $count['spam'] );
    28         $this->assertEquals( 0, $count['trash'] );
    29         $this->assertEquals( 0, $count['post-trashed'] );
    30         $this->assertEquals( 1, $count['total_comments'] );
     25        $this->assertSame( 1, $count['approved'] );
     26        $this->assertSame( 0, $count['awaiting_moderation'] );
     27        $this->assertSame( 0, $count['spam'] );
     28        $this->assertSame( 0, $count['trash'] );
     29        $this->assertSame( 0, $count['post-trashed'] );
     30        $this->assertSame( 1, $count['total_comments'] );
    3131    }
    3232
     
    4040        $count = get_comment_count();
    4141
    42         $this->assertEquals( 0, $count['approved'] );
    43         $this->assertEquals( 1, $count['awaiting_moderation'] );
    44         $this->assertEquals( 0, $count['spam'] );
    45         $this->assertEquals( 0, $count['trash'] );
    46         $this->assertEquals( 0, $count['post-trashed'] );
    47         $this->assertEquals( 1, $count['total_comments'] );
     42        $this->assertSame( 0, $count['approved'] );
     43        $this->assertSame( 1, $count['awaiting_moderation'] );
     44        $this->assertSame( 0, $count['spam'] );
     45        $this->assertSame( 0, $count['trash'] );
     46        $this->assertSame( 0, $count['post-trashed'] );
     47        $this->assertSame( 1, $count['total_comments'] );
    4848    }
    4949
     
    5757        $count = get_comment_count();
    5858
    59         $this->assertEquals( 0, $count['approved'] );
    60         $this->assertEquals( 0, $count['awaiting_moderation'] );
    61         $this->assertEquals( 1, $count['spam'] );
    62         $this->assertEquals( 0, $count['trash'] );
    63         $this->assertEquals( 0, $count['post-trashed'] );
    64         $this->assertEquals( 1, $count['total_comments'] );
     59        $this->assertSame( 0, $count['approved'] );
     60        $this->assertSame( 0, $count['awaiting_moderation'] );
     61        $this->assertSame( 1, $count['spam'] );
     62        $this->assertSame( 0, $count['trash'] );
     63        $this->assertSame( 0, $count['post-trashed'] );
     64        $this->assertSame( 1, $count['total_comments'] );
    6565    }
    6666
     
    7474        $count = get_comment_count();
    7575
    76         $this->assertEquals( 0, $count['approved'] );
    77         $this->assertEquals( 0, $count['awaiting_moderation'] );
    78         $this->assertEquals( 0, $count['spam'] );
    79         $this->assertEquals( 1, $count['trash'] );
    80         $this->assertEquals( 0, $count['post-trashed'] );
    81         $this->assertEquals( 0, $count['total_comments'] );
     76        $this->assertSame( 0, $count['approved'] );
     77        $this->assertSame( 0, $count['awaiting_moderation'] );
     78        $this->assertSame( 0, $count['spam'] );
     79        $this->assertSame( 1, $count['trash'] );
     80        $this->assertSame( 0, $count['post-trashed'] );
     81        $this->assertSame( 0, $count['total_comments'] );
    8282    }
    8383
     
    9191        $count = get_comment_count();
    9292
    93         $this->assertEquals( 0, $count['approved'] );
    94         $this->assertEquals( 0, $count['awaiting_moderation'] );
    95         $this->assertEquals( 0, $count['spam'] );
    96         $this->assertEquals( 0, $count['trash'] );
    97         $this->assertEquals( 1, $count['post-trashed'] );
    98         $this->assertEquals( 0, $count['total_comments'] );
     93        $this->assertSame( 0, $count['approved'] );
     94        $this->assertSame( 0, $count['awaiting_moderation'] );
     95        $this->assertSame( 0, $count['spam'] );
     96        $this->assertSame( 0, $count['trash'] );
     97        $this->assertSame( 1, $count['post-trashed'] );
     98        $this->assertSame( 0, $count['total_comments'] );
    9999    }
    100100}
  • trunk/tests/phpunit/tests/import/import.php

    r47198 r47526  
    8282        $this->assertEquals( 1, $page_count->draft );
    8383        $comment_count = wp_count_comments();
    84         $this->assertEquals( 1, $comment_count->total_comments );
     84        $this->assertSame( 1, $comment_count->total_comments );
    8585
    8686        $posts = get_posts(
     
    246246        $this->assertEquals( 1, $page_count->draft );
    247247        $comment_count = wp_count_comments();
    248         $this->assertEquals( 1, $comment_count->total_comments );
     248        $this->assertSame( 1, $comment_count->total_comments );
    249249    }
    250250
Note: See TracChangeset for help on using the changeset viewer.