Make WordPress Core

Ticket #34997: 34997.diff

File 34997.diff, 2.6 KB (added by johnbillion, 8 years ago)
  • src/wp-includes/comment.php

     
    27472747                $comment_author       = $user->display_name;
    27482748                $comment_author_email = $user->user_email;
    27492749                $comment_author_url   = $user->user_url;
    2750                 $user_id              = $user->ID;
     2750                $user_ID              = $user->ID;
    27512751                if ( current_user_can( 'unfiltered_html' ) ) {
    27522752                        if ( ! isset( $comment_data['_wp_unfiltered_html_comment'] )
    27532753                                || ! wp_verify_nonce( $comment_data['_wp_unfiltered_html_comment'], 'unfiltered-html-comment_' . $comment_post_ID )
     
    27842784                'comment_content',
    27852785                'comment_type',
    27862786                'comment_parent',
    2787                 'user_id'
     2787                'user_ID'
    27882788        );
    27892789
    27902790        $comment_id = wp_new_comment( wp_slash( $commentdata ) );
  • tests/phpunit/tests/comment-submission.php

     
    55 */
    66class Tests_Comment_Submission extends WP_UnitTestCase {
    77
     8        protected $preprocess_comment_data = array();
     9
    810        function setUp() {
    911                parent::setUp();
    1012                require_once ABSPATH . WPINC . '/class-phpass.php';
     
    590592
    591593        }
    592594
     595        /**
     596         * @ticket 34997
     597         */
     598        public function test_comment_submission_sends_all_expected_parameters_to_preprocess_comment_filter() {
     599
     600                $user = self::factory()->user->create_and_get( array(
     601                        'role' => 'author',
     602                ) );
     603                wp_set_current_user( $user->ID );
     604
     605                $post = self::factory()->post->create_and_get();
     606                $data = array(
     607                        'comment_post_ID' => $post->ID,
     608                        'comment'         => 'Comment',
     609                );
     610
     611                add_filter( 'preprocess_comment', array( $this, 'filter_preprocess_comment' ) );
     612
     613                $comment = wp_handle_comment_submission( $data );
     614
     615                remove_filter( 'preprocess_comment', array( $this, 'filter_preprocess_comment' ) );
     616
     617                $this->assertNotWPError( $comment );
     618                $this->assertEquals( array(
     619                        'comment_post_ID'      => $post->ID,
     620                        'comment_author'       => $user->display_name,
     621                        'comment_author_email' => $user->user_email,
     622                        'comment_author_url'   => $user->user_url,
     623                        'comment_content'      => $data['comment'],
     624                        'comment_type'         => '',
     625                        'comment_parent'       => '0',
     626                        'user_ID'              => $user->ID,
     627                        'user_id'              => $user->ID,
     628                ), $this->preprocess_comment_data );
     629
     630        }
     631
     632        public function filter_preprocess_comment( $commentdata ) {
     633                $this->preprocess_comment_data = $commentdata;
     634                return $commentdata;
     635        }
     636
    593637}