Ticket #38820: 38820.3.diff
| File 38820.3.diff, 2.5 KB (added by , 9 years ago) |
|---|
-
src/wp-includes/rest-api/endpoints/class-wp-rest-comments-controller.php
433 433 return $prepared_comment; 434 434 } 435 435 436 // Do not allow comments to be created with a non-default type. 437 if ( ! empty( $request['type'] ) && 'comment' !== $request['type'] ) { 438 return new WP_Error( 'rest_invalid_comment_type', __( 'Cannot create a comment with that type.' ), array( 'status' => 400 ) ); 439 } 440 436 441 /* 437 442 * Do not allow a comment to be created with missing or empty 438 443 * comment_content. See wp_handle_comment_submission(). -
tests/phpunit/tests/rest-api/rest-comments-controller.php
1034 1034 $this->assertEquals( $comment_id, $collection_data[0]['id'] ); 1035 1035 } 1036 1036 1037 /** 1038 * @ticket 38820 1039 */ 1040 public function test_create_comment_with_invalid_type() { 1041 $post_id = $this->factory->post->create(); 1042 wp_set_current_user( self::$admin_id ); 1043 1044 $params = array( 1045 'post' => $post_id, 1046 'author' => self::$admin_id, 1047 'author_name' => 'Comic Book Guy', 1048 'author_email' => 'cbg@androidsdungeon.com', 1049 'author_url' => 'http://androidsdungeon.com', 1050 'content' => 'Worst Comment Ever!', 1051 'date' => '2014-11-07T10:14:25', 1052 'type' => 'foo', 1053 ); 1054 1055 $request = new WP_REST_Request( 'POST', '/wp/v2/comments' ); 1056 $request->add_header( 'content-type', 'application/json' ); 1057 $request->set_body( wp_json_encode( $params ) ); 1058 1059 $response = $this->server->dispatch( $request ); 1060 $this->assertErrorResponse( 'rest_invalid_comment_type', $response, 400 ); 1061 } 1062 1037 1063 public function test_create_comment_invalid_email() { 1038 1064 $post_id = $this->factory->post->create(); 1039 1065 wp_set_current_user( self::$admin_id ); … … 2218 2244 $this->assertArrayHasKey( 'type', $properties ); 2219 2245 2220 2246 $this->assertEquals( '127.0.0.1', $properties['author_ip']['default'] ); 2247 2248 $this->assertEquals( 'comment', $properties['type']['default'] ); 2249 2221 2250 $this->assertEquals( 0, $properties['parent']['default'] ); 2222 2251 $this->assertEquals( 0, $properties['post']['default'] ); 2223 2252 }