public function testRemoveSubAdminUnsuccessful() { $targetUser = $this->getMock('\\OCP\\IUser'); $targetGroup = $this->getMock('\\OCP\\IGroup'); $this->userManager->expects($this->once())->method('get')->with('ExistingUser')->will($this->returnValue($targetUser)); $this->groupManager->expects($this->once())->method('get')->with('GroupToDeleteFrom')->will($this->returnValue($targetGroup)); $subAdminManager = $this->getMockBuilder('\\OC\\Subadmin')->disableOriginalConstructor()->getMock(); $subAdminManager->expects($this->once())->method('isSubAdminOfGroup')->with($targetUser, $targetGroup)->will($this->returnValue(true)); $subAdminManager->expects($this->once())->method('deleteSubAdmin')->with($targetUser, $targetGroup)->will($this->returnValue(false)); $this->groupManager->expects($this->once())->method('getSubAdmin')->will($this->returnValue($subAdminManager)); $expected = new \OC_OCS_Result(null, 103, 'Unknown error occurred'); $this->assertEquals($expected, $this->api->removeSubAdmin(['userid' => 'ExistingUser', '_delete' => ['groupid' => 'GroupToDeleteFrom']])); }
public function testRemoveSubAdmin() { $user1 = $this->generateUsers(); $user2 = $this->generateUsers(); self::loginAsUser($user1); \OC_Group::addToGroup($user1, 'admin'); $group1 = $this->getUniqueID(); \OC_Group::createGroup($group1); \OC_SubAdmin::createSubAdmin($user2, $group1); $result = \OCA\provisioning_api\Users::removeSubAdmin(array('userid' => $user2, '_delete' => array('groupid' => $group1))); $this->assertInstanceOf('OC_OCS_Result', $result); $this->assertTrue($result->succeeded()); $this->assertTrue(!\OC_SubAdmin::isSubAdminofGroup($user2, $group1)); \OC_Group::deleteGroup($group1); $user1 = $this->generateUsers(); self::loginAsUser($user1); \OC_Group::addToGroup($user1, 'admin'); $result = \OCA\provisioning_api\Users::removeSubAdmin(array('userid' => $this->getUniqueID(), '_delete' => array('groupid' => $group1))); $this->assertInstanceOf('OC_OCS_Result', $result); $this->assertEquals(101, $result->getStatusCode()); $this->assertFalse($result->succeeded()); $this->resetParams(); $user1 = $this->generateUsers(); $user2 = $this->generateUsers(); self::loginAsUser($user1); \OC_Group::addToGroup($user1, 'admin'); $group1 = $this->getUniqueID(); \OC_Group::createGroup($group1); $_POST['groupid'] = $group1; $result = \OCA\provisioning_api\Users::removeSubAdmin(array('userid' => $user2, '_delete' => array('groupid' => $group1))); $this->assertInstanceOf('OC_OCS_Result', $result); $this->assertFalse($result->succeeded()); $this->assertEquals(102, $result->getStatusCode()); \OC_Group::deleteGroup($group1); }