/** * try to save a hidden account * */ public function testSaveHiddenAccount() { $accountData = $this->objects['user']->toArray(); $accountData['visibility'] = Tinebase_Model_User::VISIBILITY_HIDDEN; $accountData['container_id'] = 0; $account = $this->_json->saveUser($accountData); $this->assertTrue(is_array($account)); $this->assertTrue(!empty($account['contact_id'])); $appConfigDefaults = Admin_Controller::getInstance()->getConfigSettings(); $this->assertEquals($appConfigDefaults[Admin_Model_Config::DEFAULTINTERNALADDRESSBOOK], $account['container_id']['id']); }
/** * testUpdateUserRemoveGroup * * @see 0006762: user still in admin role when admin group is removed */ public function testUpdateUserRemoveGroup() { $account = $this->testSaveAccount(); $internalContainer = Tinebase_Container::getInstance()->get($account['container_id']['id']); Tinebase_Container::getInstance()->setGrants($internalContainer, new Tinebase_Record_RecordSet('Tinebase_Model_Grants'), TRUE, FALSE); $adminGroupId = Tinebase_Group::getInstance()->getDefaultAdminGroup()->getId(); $account['groups'] = array($account['accountPrimaryGroup'], $adminGroupId); $account['container_id'] = $account['container_id']['id']; $account = $this->_json->saveUser($account); $roles = Tinebase_Acl_Roles::getInstance()->getRoleMemberships($account['accountId']); $adminRole = Tinebase_Acl_Roles::getInstance()->getRoleByName('admin role'); $this->assertEquals(array($adminRole->getId()), $roles); $account['accountPrimaryGroup'] = $account['accountPrimaryGroup']['id']; $account['groups'] = array($account['accountPrimaryGroup']); if (is_array($account['container_id']) && is_array($account['container_id']['id'])) { $account['container_id'] = $account['container_id']['id']; } $account = $this->_json->saveUser($account); $roles = Tinebase_Acl_Roles::getInstance()->getRoleMemberships($account['accountId']); $this->assertEquals(array(), $roles); $this->assertTrue(isset($account['last_modified_by']), 'modlog fields missing from account: ' . print_r($account, true)); $this->assertEquals(Tinebase_Core::getUser()->accountId, $account['last_modified_by']); }