Changeset 48945 for trunk/tests/phpunit/tests/rest-api/rest-request.php
- Timestamp:
- 09/05/2020 06:07:46 PM (4 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/tests/phpunit/tests/rest-api/rest-request.php
r48939 r48945 780 780 $this->assertSame( 'value', $request->get_param( 'param' ) ); 781 781 } 782 783 /** 784 * @ticket 51255 785 */ 786 public function test_route_level_validate_callback() { 787 $request = new WP_REST_Request(); 788 $request->set_query_params( array( 'test' => 'value' ) ); 789 790 $error = new WP_Error( 'error_code', __( 'Error Message' ), array( 'status' => 400 ) ); 791 $callback = $this->createPartialMock( 'stdClass', array( '__invoke' ) ); 792 $callback->expects( self::once() )->method( '__invoke' )->with( self::identicalTo( $request ) )->willReturn( $error ); 793 $request->set_attributes( 794 array( 795 'args' => array( 796 'test' => array( 797 'validate_callback' => '__return_true', 798 ), 799 ), 800 'validate_callback' => $callback, 801 ) 802 ); 803 804 $this->assertSame( $error, $request->has_valid_params() ); 805 } 806 807 /** 808 * @ticket 51255 809 */ 810 public function test_route_level_validate_callback_no_parameter_callbacks() { 811 $request = new WP_REST_Request(); 812 $request->set_query_params( array( 'test' => 'value' ) ); 813 814 $error = new WP_Error( 'error_code', __( 'Error Message' ), array( 'status' => 400 ) ); 815 $callback = $this->createPartialMock( 'stdClass', array( '__invoke' ) ); 816 $callback->expects( self::once() )->method( '__invoke' )->with( self::identicalTo( $request ) )->willReturn( $error ); 817 $request->set_attributes( 818 array( 819 'validate_callback' => $callback, 820 ) 821 ); 822 823 $this->assertSame( $error, $request->has_valid_params() ); 824 } 825 826 /** 827 * @ticket 51255 828 */ 829 public function test_route_level_validate_callback_is_not_executed_if_parameter_validation_fails() { 830 $request = new WP_REST_Request(); 831 $request->set_query_params( array( 'test' => 'value' ) ); 832 833 $callback = $this->createPartialMock( 'stdClass', array( '__invoke' ) ); 834 $callback->expects( self::never() )->method( '__invoke' ); 835 $request->set_attributes( 836 array( 837 'validate_callback' => $callback, 838 'args' => array( 839 'test' => array( 840 'validate_callback' => '__return_false', 841 ), 842 ), 843 ) 844 ); 845 846 $valid = $request->has_valid_params(); 847 $this->assertWPError( $valid ); 848 $this->assertEquals( 'rest_invalid_param', $valid->get_error_code() ); 849 } 782 850 }
Note: See TracChangeset
for help on using the changeset viewer.