- Timestamp:
- 11/03/2016 01:45:48 AM (8 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/tests/phpunit/tests/rest-api/rest-posts-controller.php
r39093 r39104 309 309 $this->assertEquals( 200, $response->get_status() ); 310 310 $this->assertEquals( 1, count( $response->get_data() ) ); 311 } 312 313 public function test_get_items_multiple_statuses_string_query() { 314 wp_set_current_user( self::$editor_id ); 315 316 $this->factory->post->create( array( 'post_status' => 'draft' ) ); 317 $this->factory->post->create( array( 'post_status' => 'private' ) ); 318 $this->factory->post->create( array( 'post_status' => 'publish' ) ); 319 320 $request = new WP_REST_Request( 'GET', '/wp/v2/posts' ); 321 $request->set_param( 'context', 'edit' ); 322 $request->set_param( 'status', 'draft,private' ); 323 324 $response = $this->server->dispatch( $request ); 325 $this->assertEquals( 200, $response->get_status() ); 326 $data = $response->get_data(); 327 $this->assertEquals( 2, count( $data ) ); 328 $statuses = array( 329 $data[0]['status'], 330 $data[1]['status'], 331 ); 332 sort( $statuses ); 333 $this->assertEquals( array( 'draft', 'private' ), $statuses ); 334 } 335 336 public function test_get_items_multiple_statuses_array_query() { 337 wp_set_current_user( self::$editor_id ); 338 339 $this->factory->post->create( array( 'post_status' => 'draft' ) ); 340 $this->factory->post->create( array( 'post_status' => 'pending' ) ); 341 $this->factory->post->create( array( 'post_status' => 'publish' ) ); 342 343 $request = new WP_REST_Request( 'GET', '/wp/v2/posts' ); 344 $request->set_param( 'context', 'edit' ); 345 $request->set_param( 'status', array( 'draft', 'pending' ) ); 346 347 $response = $this->server->dispatch( $request ); 348 $this->assertEquals( 200, $response->get_status() ); 349 $data = $response->get_data(); 350 $this->assertEquals( 2, count( $data ) ); 351 $statuses = array( 352 $data[0]['status'], 353 $data[1]['status'], 354 ); 355 sort( $statuses ); 356 $this->assertEquals( array( 'draft', 'pending' ), $statuses ); 357 } 358 359 public function test_get_items_multiple_statuses_one_invalid_query() { 360 $request = new WP_REST_Request( 'GET', '/wp/v2/posts' ); 361 $request->set_param( 'context', 'edit' ); 362 $request->set_param( 'status', array( 'draft', 'nonsense' ) ); 363 $response = $this->server->dispatch( $request ); 364 $this->assertErrorResponse( 'rest_invalid_param', $response, 400 ); 311 365 } 312 366 … … 1964 2018 } 1965 2019 2020 public function test_status_array_enum_args() { 2021 $request = new WP_REST_Request( 'GET', '/wp/v2' ); 2022 $response = $this->server->dispatch( $request ); 2023 $data = $response->get_data(); 2024 $list_posts_args = $data['routes']['/wp/v2/posts']['endpoints'][0]['args']; 2025 $status_arg = $list_posts_args['status']; 2026 $this->assertEquals( 'array', $status_arg['type'] ); 2027 $this->assertEquals( array( 2028 'type' => 'string', 2029 'enum' => array( 'publish', 'future', 'draft', 'pending', 'private', 'trash', 'auto-draft', 'inherit', 'any' ), 2030 ), $status_arg['items'] ); 2031 } 2032 1966 2033 public function test_get_additional_field_registration() { 1967 2034
Note: See TracChangeset
for help on using the changeset viewer.