From ab64d0ff00789578efbc85854678802b84db7163 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?John=20Molakvo=C3=A6=20=28skjnldsv=29?= Date: Fri, 23 Mar 2018 18:24:03 +0100 Subject: [PATCH] Fixed tests MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: John Molakvoæ (skjnldsv) --- .../lib/Controller/GroupsController.php | 10 +++++---- .../tests/Controller/GroupsControllerTest.php | 21 ++++++++++++------- 2 files changed, 20 insertions(+), 11 deletions(-) diff --git a/apps/provisioning_api/lib/Controller/GroupsController.php b/apps/provisioning_api/lib/Controller/GroupsController.php index 423313418a8c2..15818ea423c9c 100644 --- a/apps/provisioning_api/lib/Controller/GroupsController.php +++ b/apps/provisioning_api/lib/Controller/GroupsController.php @@ -29,6 +29,8 @@ use OCP\AppFramework\Http\DataResponse; use OCP\AppFramework\OCS\OCSException; +use OCP\AppFramework\OCS\OCSNotFoundException; +use OCP\AppFramework\OCS\OCSForbiddenException; use OCP\AppFramework\OCSController; use OCP\IGroup; use OCP\IGroupManager; @@ -106,7 +108,7 @@ public function getGroups(string $search = '', int $limit = null, int $offset = * @param int $offset * @return DataResponse */ - public function getGroupsDetails(string $search = '', int $limit = null, int $offset = null): DataResponse { + public function getGroupsDetails(string $search = '', int $limit = null, int $offset = 0): DataResponse { $groups = $this->groupManager->search($search, $limit, $offset); $groups = array_map(function($group) { /** @var IGroup $group */ @@ -126,7 +128,7 @@ public function getGroupsDetails(string $search = '', int $limit = null, int $of * @deprecated 14 Use getGroupUsers */ public function getGroup(string $groupId): DataResponse { - return $this->getGroup($groupId); + return $this->getGroupUsers($groupId); } /** @@ -147,7 +149,7 @@ public function getGroupUsers(string $groupId): DataResponse { if ($group !== null) { $isSubadminOfGroup =$this->groupManager->getSubAdmin()->isSubAdminOfGroup($user, $group); } else { - throw new OCSException('The requested group could not be found', \OCP\API::RESPOND_NOT_FOUND); + throw new OCSNotFoundException('The requested group could not be found'); } // Check subadmin has access to this group @@ -162,7 +164,7 @@ public function getGroupUsers(string $groupId): DataResponse { return new DataResponse(['users' => $users]); } - throw new OCSException('User does not have access to specified group', \OCP\API::RESPOND_UNAUTHORISED); + throw new OCSForbiddenException(); } /** diff --git a/apps/provisioning_api/tests/Controller/GroupsControllerTest.php b/apps/provisioning_api/tests/Controller/GroupsControllerTest.php index 352264c7afb8d..9108e2e331272 100644 --- a/apps/provisioning_api/tests/Controller/GroupsControllerTest.php +++ b/apps/provisioning_api/tests/Controller/GroupsControllerTest.php @@ -40,6 +40,8 @@ class GroupsControllerTest extends \Test\TestCase { protected $userSession; /** @var \OC\SubAdmin|\PHPUnit_Framework_MockObject_MockObject */ protected $subAdminManager; + /** @var OCA\Provisioning_API\Controller\UsersController|\PHPUnit_Framework_MockObject_MockObject */ + protected $userController; /** @var GroupsController */ protected $api; @@ -67,12 +69,17 @@ protected function setUp() { $logger = $this->createMock(ILogger::class); + $this->userController = $this->getMockBuilder('OCA\Provisioning_API\Controller\UsersController') + ->disableOriginalConstructor() + ->getMock(); + $this->api = new GroupsController( 'provisioning_api', $request, $this->groupManager, $this->userSession, - $logger + $logger, + $this->userController ); } @@ -141,10 +148,10 @@ private function asSubAdminOfGroup($group) { public function dataGetGroups() { return [ - [null, null, null], - ['foo', null, null], - [null, 1, null], - [null, null, 2], + [null, 0, 0], + ['foo', 0, 0], + [null, 1, 0], + [null, 0, 2], ['foo', 1, 2], ]; } @@ -224,7 +231,7 @@ public function testGetGroupAsSubadmin() { /** * @expectedException \OCP\AppFramework\OCS\OCSException - * @expectedExceptionCode 997 + * @expectedExceptionCode 403 */ public function testGetGroupAsIrrelevantSubadmin() { $group = $this->createGroup('group'); @@ -269,7 +276,7 @@ public function testGetGroupAsAdmin() { /** * @expectedException \OCP\AppFramework\OCS\OCSException - * @expectedExceptionCode 998 + * @expectedExceptionCode 404 * @expectedExceptionMessage The requested group could not be found */ public function testGetGroupNonExisting() {