From f7fcef77f14c12a31c105031f585093fbcc20e5d Mon Sep 17 00:00:00 2001 From: Bubka <858858+Bubka@users.noreply.github.com> Date: Fri, 17 Sep 2021 23:45:08 +0200 Subject: [PATCH] Add new exceptions --- app/Exceptions/Handler.php | 10 ++++++++++ app/Exceptions/InvalidQrCodeException.php | 2 +- app/Exceptions/InvalidSecretException.php | 14 ++++++++++++++ 3 files changed, 25 insertions(+), 1 deletion(-) create mode 100644 app/Exceptions/InvalidSecretException.php diff --git a/app/Exceptions/Handler.php b/app/Exceptions/Handler.php index 03963e30..80315e60 100644 --- a/app/Exceptions/Handler.php +++ b/app/Exceptions/Handler.php @@ -53,10 +53,20 @@ public function render($request, Throwable $exception) return response()->json([ 'message' => str_replace('App\\', '', $exception->getModel()).' not found'], 404); } + if ($exception instanceof InvalidOtpParameterException) { + return response()->json([ + 'message' => 'invalid OTP parameters', + 'reason' => [$exception->getMessage()] + ], 400); + } if ($exception instanceof InvalidQrCodeException) { return response()->json([ 'message' => 'not a valid QR code'], 400); } + if ($exception instanceof InvalidSecretException) { + return response()->json([ + 'message' => 'not a valid base32 encoded secret'], 400); + } return parent::render($request, $exception); } diff --git a/app/Exceptions/InvalidQrCodeException.php b/app/Exceptions/InvalidQrCodeException.php index 23fbf8f9..ccabe6ef 100644 --- a/app/Exceptions/InvalidQrCodeException.php +++ b/app/Exceptions/InvalidQrCodeException.php @@ -5,7 +5,7 @@ use Exception; /** - * Class UnsupportedOtpType. + * Class InvalidQrCodeException. * * @codeCoverageIgnore */ diff --git a/app/Exceptions/InvalidSecretException.php b/app/Exceptions/InvalidSecretException.php new file mode 100644 index 00000000..236e806a --- /dev/null +++ b/app/Exceptions/InvalidSecretException.php @@ -0,0 +1,14 @@ +