diff options
-rw-r--r-- | lib/Controller/FolderApiV2Controller.php | 22 | ||||
-rw-r--r-- | tests/Unit/Controller/FolderApiV2ControllerTest.php | 10 |
2 files changed, 15 insertions, 17 deletions
diff --git a/lib/Controller/FolderApiV2Controller.php b/lib/Controller/FolderApiV2Controller.php index a1fdcd44c..e849f1cbc 100644 --- a/lib/Controller/FolderApiV2Controller.php +++ b/lib/Controller/FolderApiV2Controller.php @@ -49,19 +49,17 @@ class FolderApiV2Controller extends ApiController */ public function create($name) { - try { - $this->folderService->purgeDeleted($this->getUserId(), false); - $responseData = $this->serializeEntityV2( - $this->folderService->create($this->getUserId(), $name) - ); - return $this->responseV2([ - 'folder' => $responseData - ]); - } catch (ServiceValidationException $ex) { - return $this->errorResponseV2($ex, Http::STATUS_BAD_REQUEST); - } catch (ServiceConflictException $ex) { - return $this->errorResponseV2($ex, Http::STATUS_CONFLICT); + if (empty($name)) { + return $this->errorResponseV2('folder name is empty', 1, Http::STATUS_BAD_REQUEST); } + + $this->folderService->purgeDeleted($this->getUserId(), false); + $responseData = $this->serializeEntityV2( + $this->folderService->create($this->getUserId(), $name) + ); + return $this->responseV2([ + 'folder' => $responseData + ]); } /** diff --git a/tests/Unit/Controller/FolderApiV2ControllerTest.php b/tests/Unit/Controller/FolderApiV2ControllerTest.php index 639e29833..0799567bf 100644 --- a/tests/Unit/Controller/FolderApiV2ControllerTest.php +++ b/tests/Unit/Controller/FolderApiV2ControllerTest.php @@ -96,16 +96,16 @@ class FolderApiV2ControllerTest extends TestCase public function testCreateInvalidFolderName() { - $msg = 'exists'; + $msg = 'folder name is empty'; + $code = 1; - $this->folderService->expects($this->once()) - ->method('purgeDeleted') - ->with($this->equalTo($this->user->getUID()), $this->equalTo(false)); + $folderName = ''; - $response = $this->folderAPI->create('hi'); + $response = $this->folderAPI->create($folderName); $data = $response->getData(); $this->assertEquals($msg, $data['error']['message']); + $this->assertEquals($code, $data['error']['code']); $this->assertEquals(Http::STATUS_BAD_REQUEST, $response->getStatus()); } |