From 112cbb9039b1facd29251158bb266477d332df6a Mon Sep 17 00:00:00 2001 From: Alejandro Celaya Date: Mon, 2 Jan 2023 13:38:04 +0100 Subject: [PATCH] Added API test for malformed request JSON body --- .../test-api/Middleware/BodyParserTest.php | 27 +++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 module/Rest/test-api/Middleware/BodyParserTest.php diff --git a/module/Rest/test-api/Middleware/BodyParserTest.php b/module/Rest/test-api/Middleware/BodyParserTest.php new file mode 100644 index 00000000..e2170c76 --- /dev/null +++ b/module/Rest/test-api/Middleware/BodyParserTest.php @@ -0,0 +1,27 @@ +callApiWithKey(self::METHOD_POST, '/short-urls', [ + RequestOptions::HEADERS => ['content-type' => 'application/json'], + RequestOptions::BODY => '{"foo', + ]); + $payload = $this->getJsonResponsePayload($resp); + + self::assertEquals(400, $resp->getStatusCode()); + self::assertEquals(400, $payload['status']); + self::assertEquals('Provided request does not contain a valid JSON body.', $payload['detail']); + self::assertEquals('Malformed request body', $payload['title']); + self::assertEquals('https://shlink.io/api/error/malformed-request-body', $payload['type']); + } +}