diff --git a/tests/phpunit/tests/rest-api/rest-plugins-controller.php b/tests/phpunit/tests/rest-api/rest-plugins-controller.php index e2a61d605b..3cea054301 100644 --- a/tests/phpunit/tests/rest-api/rest-plugins-controller.php +++ b/tests/phpunit/tests/rest-api/rest-plugins-controller.php @@ -546,8 +546,26 @@ class WP_REST_Plugins_Controller_Test extends WP_Test_REST_Controller_Testcase { */ public function test_create_item_unknown_plugin() { wp_set_current_user( self::$super_admin ); + add_filter( + 'pre_http_request', + static function() { + /* + * Mocks the request to: + * https://api.wordpress.org/plugins/info/1.2/?action=plugin_information&request%5Bslug%5D=alex-says-this-block-definitely-doesnt-exist&request%5Bfields%5D%5Bsections%5D=0&request%5Bfields%5D%5Blanguage_packs%5D=1&request%5Blocale%5D=en_US&request%5Bwp_version%5D=5.9 + */ + return array( + 'headers' => array(), + 'response' => array( + 'code' => 404, + 'message' => 'Not Found', + ), + 'body' => '{"error":"Plugin not found."}', + 'cookies' => array(), + 'filename' => null, + ); + } + ); - // This will hit the live API. $request = new WP_REST_Request( 'POST', self::BASE ); $request->set_body_params( array( 'slug' => 'alex-says-this-block-definitely-doesnt-exist' ) ); $response = rest_do_request( $request );