From aacb3ddc1eb4342ce13d193e650c4fb5d223dd0e Mon Sep 17 00:00:00 2001 From: provokateurin Date: Tue, 22 Oct 2024 08:20:04 +0200 Subject: [PATCH] fix(files_sharing): Cleanup error messages Signed-off-by: provokateurin --- .../lib/Controller/ShareAPIController.php | 18 +++++++++--------- apps/files_sharing/tests/ApiTest.php | 2 +- .../Controller/ShareAPIControllerTest.php | 2 +- 3 files changed, 11 insertions(+), 11 deletions(-) diff --git a/apps/files_sharing/lib/Controller/ShareAPIController.php b/apps/files_sharing/lib/Controller/ShareAPIController.php index d6800acf6555f..077eb4b35a360 100644 --- a/apps/files_sharing/lib/Controller/ShareAPIController.php +++ b/apps/files_sharing/lib/Controller/ShareAPIController.php @@ -646,7 +646,7 @@ public function createShare( $expireDateTime = $this->parseDate($expireDate); $share->setExpirationDate($expireDateTime); } catch (\Exception $e) { - throw new OCSNotFoundException($this->l->t('Invalid date, date format must be YYYY-MM-DD')); + throw new OCSNotFoundException($e->getMessage(), $e); } } else { // Client sent empty string for expire date. @@ -812,12 +812,11 @@ public function createShare( try { $share = $this->shareManager->createShare($share); } catch (GenericShareException $e) { - $this->logger->error($e->getMessage(), ['exception' => $e]); $code = $e->getCode() === 0 ? 403 : $e->getCode(); throw new OCSException($e->getHint(), $code); } catch (\Exception $e) { $this->logger->error($e->getMessage(), ['exception' => $e]); - throw new OCSForbiddenException($e->getMessage(), $e); + throw new OCSForbiddenException('Failed to create share.', $e); } $output = $this->formatShare($share); @@ -1349,11 +1348,11 @@ public function updateShare( $share->setExpirationDate(null); } elseif ($expireDate !== null) { try { - $expireDate = $this->parseDate($expireDate); + $expireDateTime = $this->parseDate($expireDate); + $share->setExpirationDate($expireDateTime); } catch (\Exception $e) { throw new OCSBadRequestException($e->getMessage(), $e); } - $share->setExpirationDate($expireDate); } try { @@ -1362,7 +1361,8 @@ public function updateShare( $code = $e->getCode() === 0 ? 403 : $e->getCode(); throw new OCSException($e->getHint(), (int)$code); } catch (\Exception $e) { - throw new OCSBadRequestException($e->getMessage(), $e); + $this->logger->error($e->getMessage(), ['exception' => $e]); + throw new OCSBadRequestException('Failed to update share.', $e); } return new DataResponse($this->formatShare($share)); @@ -1449,7 +1449,8 @@ public function acceptShare(string $id): DataResponse { $code = $e->getCode() === 0 ? 403 : $e->getCode(); throw new OCSException($e->getHint(), (int)$code); } catch (\Exception $e) { - throw new OCSBadRequestException($e->getMessage(), $e); + $this->logger->error($e->getMessage(), ['exception' => $e]); + throw new OCSBadRequestException('Failed to accept share.', $e); } return new DataResponse(); @@ -2141,9 +2142,8 @@ public function sendShareEmail(string $id, $password = ''): DataResponse { $provider->sendMailNotification($share); return new DataResponse(); - } catch (OCSBadRequestException $e) { - throw $e; } catch (Exception $e) { + $this->logger->error($e->getMessage(), ['exception' => $e]); throw new OCSException($this->l->t('Error while sending mail notification')); } diff --git a/apps/files_sharing/tests/ApiTest.php b/apps/files_sharing/tests/ApiTest.php index ec76186c56681..c20644fc2fca3 100644 --- a/apps/files_sharing/tests/ApiTest.php +++ b/apps/files_sharing/tests/ApiTest.php @@ -1299,7 +1299,7 @@ public function testPublicLinkExpireDate($date, $valid): void { $this->assertTrue($valid); } catch (OCSNotFoundException $e) { $this->assertFalse($valid); - $this->assertEquals('Invalid date, date format must be YYYY-MM-DD', $e->getMessage()); + $this->assertEquals('Invalid date. Format must be YYYY-MM-DD', $e->getMessage()); $ocs->cleanup(); return; } diff --git a/apps/files_sharing/tests/Controller/ShareAPIControllerTest.php b/apps/files_sharing/tests/Controller/ShareAPIControllerTest.php index aeba8cb9aea0a..768bebe0271a4 100644 --- a/apps/files_sharing/tests/Controller/ShareAPIControllerTest.php +++ b/apps/files_sharing/tests/Controller/ShareAPIControllerTest.php @@ -2217,7 +2217,7 @@ public function testCreateShareValidExpireDate(): void { public function testCreateShareInvalidExpireDate(): void { $this->expectException(OCSNotFoundException::class); - $this->expectExceptionMessage('Invalid date, date format must be YYYY-MM-DD'); + $this->expectExceptionMessage('Invalid date. Format must be YYYY-MM-DD'); $ocs = $this->mockFormatShare();