* @license http://www.fsf.org/copyleft/lgpl.html LGPL
* @link http://pear.horde.org/index.php?package=Kolab_Server
*/
-class Horde_Kolab_Server_Test extends Horde_Kolab_Server_Ldap
+class Horde_Kolab_Server_Test extends Horde_Kolab_Server_Kolab
{
/**
$this->data[$dn] = array(
'dn' => $dn,
- 'data' => $ldap_data
+ 'data' => array_merge($ldap_data,
+ array('dn' => $dn)),
);
$this->store();
}
foreach ($result as $entry) {
$t = $entry['data'];
$t['dn'] = $entry['dn'];
- $data[] = $t;
+ $data[$entry['dn']] = $t;
}
return $data;
}
$world['result']['add'] = $world['server']->add($this->provideDistributionList());
break;
case 'listing all users':
- $world['list'] = $world['server']->listObjects('Horde_Kolab_Server_Object_user');
+ $world['list'] = $world['server']->listObjects('Horde_Kolab_Server_Object_Kolab_User');
break;
case 'listing all groups':
- $world['list'] = $world['server']->listObjects('Horde_Kolab_Server_Object_group');
+ $world['list'] = $world['server']->listObjects('Horde_Kolab_Server_Object_Kolabgroupofnames');
break;
case 'listing all objects of type':
$world['list'] = $world['server']->listObjects($arguments[0]);
*
* @return Horde_Kolab_Server The empty server.
*/
- public function &prepareEmptyKolabServer($type = 'test')
+ public function &prepareEmptyKolabServer($type = 'Test')
{
global $conf;
/** Prepare a Kolab test server */
$conf['kolab']['server']['driver'] = $type;
$conf['kolab']['server']['params']['basedn'] = 'dc=example,dc=org';
- $conf['kolab']['server']['params']['data'] = array();
if ($type == 'file') {
$conf['kolab']['server']['params']['file'] = Horde::getTempFile('fileTest');
*
* @return Horde_Kolab_Server The empty server.
*/
- public function &prepareBasicServer($type = 'test')
+ public function &prepareBasicServer($type = 'Test')
{
$server = $this->prepareEmptyKolabServer($type);
$this->prepareUsers($server);
{
return array('givenName' => 'Gunnar',
'sn' => 'Wrobel',
- 'type' => 'Horde_Kolab_Server_Object_user',
+ 'type' => 'Horde_Kolab_Server_Object_Kolab_User',
'mail' => 'wrobel@example.org',
'uid' => 'wrobel',
'userPassword' => 'none',
{
return array('givenName' => 'Test',
'sn' => 'Test',
- 'type' => 'Horde_Kolab_Server_Object_user',
+ 'type' => 'Horde_Kolab_Server_Object_Kolab_User',
'mail' => 'test@example.org',
'uid' => 'test',
'userPassword' => 'test',
{
return array('givenName' => 'Test',
'sn' => 'Address',
- 'type' => 'Horde_Kolab_Server_Object_address',
+ 'type' => 'Horde_Kolab_Server_Object_Kolab_Address',
'mail' => 'address@example.org');
}
return array('sn' => 'Administrator',
'givenName' => 'The',
'uid' => 'admin',
- 'type' => 'Horde_Kolab_Server_Object_administrator',
+ 'type' => 'Horde_Kolab_Server_Object_Kolab_Administrator',
'userPassword' => 'none');
}
return array('sn' => 'Tainer',
'givenName' => 'Main',
'uid' => 'maintainer',
- 'type' => 'Horde_Kolab_Server_Object_maintainer',
+ 'type' => 'Horde_Kolab_Server_Object_Kolab_Maintainer',
'userPassword' => 'none',
);
}
return array('sn' => 'Maintainer',
'givenName' => 'Domain',
'uid' => 'domainmaintainer',
- 'type' => 'Horde_Kolab_Server_Object_domainmaintainer',
+ 'type' => 'Horde_Kolab_Server_Object_Kolab_Domainmaintainer',
'userPassword' => 'none',
'domain' => array('example.com'),
);
{
return array('cn' => 'shared@example.org',
'kolabHomeServer' => 'example.org',
- 'type' => 'Horde_Kolab_Server_Object_sharedfolder');
+ 'type' => 'Horde_Kolab_Server_Object_Kolabsharedfolder');
}
/**
public function provideBasicGroupOne()
{
return array('mail' => 'empty.group@example.org',
- 'type' => 'Horde_Kolab_Server_Object_group');
+ 'type' => 'Horde_Kolab_Server_Object_Kolabgroupofnames');
}
/**
public function provideBasicGroupTwo()
{
return array('mail' => 'group@example.org',
- 'type' => 'Horde_Kolab_Server_Object_group',
+ 'type' => 'Horde_Kolab_Server_Object_Kolabgroupofnames',
'member' => array('cn=Test Test,dc=example,dc=org',
'cn=Gunnar Wrobel,dc=example,dc=org'));
}
public function provideDistributionList()
{
return array('mail' => 'distlist@example.org',
- 'type' => 'Horde_Kolab_Server_Object_distlist',
+ 'type' => 'Horde_Kolab_Server_Object_Kolab_Distlist',
'member' => array('cn=Test Test,dc=example,dc=org',
'cn=Gunnar Wrobel,dc=example,dc=org'));
}
{
return array('givenName' => 'Test',
'sn' => 'Test',
- 'type' => 'Horde_Kolab_Server_Object_user',
+ 'type' => 'Horde_Kolab_Server_Object_Kolab_User',
'mail' => 'test@example.org');
}
{
return array('sn' => 'Test',
'userPassword' => 'none',
- 'type' => 'Horde_Kolab_Server_Object_user',
+ 'type' => 'Horde_Kolab_Server_Object_Kolab_User',
'mail' => 'test@example.org');
}
{
return array('givenName' => 'Test',
'userPassword' => 'none',
- 'type' => 'Horde_Kolab_Server_Object_user',
+ 'type' => 'Horde_Kolab_Server_Object_Kolab_User',
'mail' => 'test@example.org');
}
return array('givenName' => 'Test',
'sn' => 'Test',
'userPassword' => 'none',
- 'type' => 'Horde_Kolab_Server_Object_user');
+ 'type' => 'Horde_Kolab_Server_Object_Kolab_User');
}
public function provideInvalidUsers()
),
array(
array('mail' => 'group@example.org',
- 'type' => 'Horde_Kolab_Server_Object_group',
+ 'type' => 'Horde_Kolab_Server_Object_Kolabgroupofnames',
'member' => array('cn=Test Test,dc=example,dc=org',
'cn=Gunnar Wrobel,dc=example,dc=org')
),
),
array(
array('mail' => 'group2@example.org',
- 'type' => 'Horde_Kolab_Server_Object_group',
+ 'type' => 'Horde_Kolab_Server_Object_Kolabgroupofnames',
'member' => array('cn=Gunnar Wrobel,dc=example,dc=org')
),
),
{
return array(
array('cn' => 'Shared',
- 'type' => 'Horde_Kolab_Server_Object_sharedfolder'
+ 'type' => 'Horde_Kolab_Server_Object_Kolabsharedfolder'
),
);
}
public function validGroupWithoutMembers()
{
return array('mail' => 'empty.group@example.org',
- 'type' => 'Horde_Kolab_Server_Object_group',
+ 'type' => 'Horde_Kolab_Server_Object_Kolabgroupofnames',
);
}
return array(
array(
array(
- array('type' => 'Horde_Kolab_Server_Object_group',
+ array('type' => 'Horde_Kolab_Server_Object_Kolabgroupofnames',
'mail' => 'empty.group@example.org',
),
)
array(
array(
array('mail' => 'empty.group@example.org',
- 'type' => 'Horde_Kolab_Server_Object_group',
+ 'type' => 'Horde_Kolab_Server_Object_Kolabgroupofnames',
),
),
array(
array('mail' => 'group@example.org',
- 'type' => 'Horde_Kolab_Server_Object_group',
+ 'type' => 'Horde_Kolab_Server_Object_Kolabgroupnames',
'member' => array('cn=Test Test,dc=example,dc=org',
'cn=Gunnar Wrobel,dc=example,dc=org')
),
),
array(
array('mail' => 'group2@example.org',
- 'type' => 'Horde_Kolab_Server_Object_group',
+ 'type' => 'Horde_Kolab_Server_Object_Kolabgroupofnames',
'member' => array('cn=Gunnar Wrobel,dc=example,dc=org')
),
),
{
$this->given('an empty Kolab server')
->when('adding a Kolab server object', $user)
- ->then('the result should be an object of type', 'Horde_Kolab_Server_Object_user');
+ ->then('the result should be an object of type', 'Horde_Kolab_Server_Object_Kolab_User');
}
}
{
$admin = $this->provideBasicAdmin();
$this->assertNoError($admin);
- $uid = $this->ldap->generateUid('Horde_Kolab_Server_Object_administrator', $admin);
+ $uid = $this->ldap->generateUid('Horde_Kolab_Server_Object_Kolab_Administrator', $admin);
$this->assertNoError($uid);
$this->assertEquals('cn=The Administrator,dc=example,dc=org', $uid);
}
$admin = $this->ldap->fetch('cn=The Administrator,dc=example,dc=org');
$this->assertNoError($admin);
- $this->assertEquals('Horde_Kolab_Server_Object_administrator',
+ $this->assertEquals('Horde_Kolab_Server_Object_Kolab_Administrator',
get_class($admin));
}
$this->assertNoError($entries);
$this->assertEquals(1, count($entries));
- $list = $this->ldap->listObjects('Horde_Kolab_Server_Object_administrator');
+ $list = $this->ldap->listObjects('Horde_Kolab_Server_Object_Kolab_Administrator');
$this->assertNoError($list);
$this->assertEquals(1, count($list));
}
$this->given('an empty Kolab server')
->when('adding a distribution list')
->then('the result should be an object of type',
- 'Horde_Kolab_Server_Object_distlist');
+ 'Horde_Kolab_Server_Object_Kolab_Distlist');
}
}
{
$this->given('an empty Kolab server')
->when('retrieving a hash list with all objects of type',
- 'Horde_Kolab_Server_Object_group')
+ 'Horde_Kolab_Server_Object_Kolabgroupofnames')
->then('the list is an empty array');
}
$this->given('an empty Kolab server')
->when('adding an object list', $group_list)
->and('retrieving a hash list with all objects of type',
- 'Horde_Kolab_Server_Object_group')
+ 'Horde_Kolab_Server_Object_Kolabgroupofnames')
->then('the result indicates success.')
->and('the list has a number of entries equal to',
count($group_list));
$this->given('an empty Kolab server')
->when('adding an object list', $group_list)
->and('retrieving a hash list with all objects of type',
- 'Horde_Kolab_Server_Object_group')
+ 'Horde_Kolab_Server_Object_Kolabgroupofnames')
->then('the provided list and the result list match with regard to these attributes',
'mail', 'id', $group_list);
}
$this->given('an empty Kolab server')
->when('adding an object list', $group_list)
->and('retrieving a hash list with all objects of type',
- 'Horde_Kolab_Server_Object_group')
+ 'Horde_Kolab_Server_Object_Kolabgroupofnames')
->then('the provided list and the result list match with regard to these attributes',
'mail', 'mail', $group_list);
}
$this->given('an empty Kolab server')
->when('adding an object list', $group_list)
->and('retrieving a hash list with all objects of type',
- 'Horde_Kolab_Server_Object_group')
+ 'Horde_Kolab_Server_Object_Kolabgroupofnames')
->then('each element in the result list has an attribute',
'visible');
}
$this->given('an empty Kolab server')
->when('adding an object', $this->validGroupWithoutMembers())
->and('retrieving a hash list with all objects of type',
- 'Horde_Kolab_Server_Object_group')
+ 'Horde_Kolab_Server_Object_Kolabgroupofnames')
->then('each element in the result list has an attribute set to a given value',
'visible', true);
}
{
$groups = $this->validGroups();
$this->assertEquals('cn=empty.group@example.org,dc=example,dc=org',
- $this->ldap->generateUid('Horde_Kolab_Server_Object_group', $groups[0][0]));
+ $this->ldap->generateUid('Horde_Kolab_Server_Object_Kolabgroupofnames', $groups[0][0]));
}
/**
$group = $this->ldap->fetch('cn=empty.group@example.org,dc=example,dc=org');
$this->assertNoError($group);
- $this->assertEquals('Horde_Kolab_Server_Object_group', get_class($group));
+ $this->assertEquals('Horde_Kolab_Server_Object_Kolabgroupofnames', get_class($group));
}
/**
$result = $result->as_struct();
$this->assertEquals(3, count($result));
- $list = $this->ldap->listObjects('Horde_Kolab_Server_Object_group');
+ $list = $this->ldap->listObjects('Horde_Kolab_Server_Object_Kolabgroupofnames');
$this->assertNoError($list);
$this->assertEquals(3, count($list));
}
public function testConstructDn($dn, $data, $expect)
{
$ko = &new Horde_Kolab_Server_Object($this->_dummydb, $dn, $data);
- $ndn = $ko->get(Horde_Kolab_Server_Object_base::ATTRIBUTE_UID);
+ $ndn = $ko->get(Horde_Kolab_Server_Object_Kolab_User::ATTRIBUTE_UID);
$this->assertNoError($ndn);
$this->assertEquals($expect, $ndn);
}
*/
public function testGetFn($data, $expect)
{
- $ko = &Horde_Kolab_Server_Object::factory('Horde_Kolab_Server_Object_user',
+ $ko = &Horde_Kolab_Server_Object::factory('Horde_Kolab_Server_Object_Kolab_User',
null, $this->_dummydb, $data);
$this->assertNoError($ko);
- $ndn = $ko->get(Horde_Kolab_Server_Object_base::ATTRIBUTE_FN);
+ $ndn = $ko->get(Horde_Kolab_Server_Object_Kolab_User::ATTRIBUTE_FN);
$this->assertNoError($ndn);
$this->assertEquals($expect, $ndn);
}
*
* @return NULL
*/
-/* public function testGenerateUid() */
-/* { */
-/* $ks = &Horde_Kolab_Server::factory('none'); */
-/* $uid = $ks->generateUid('Horde_Kolab_Server_Object', array()); */
-/* $this->assertEquals($uid, ''); */
-/* } */
+ public function testGenerateUid()
+ {
+ $ks = &Horde_Kolab_Server::factory('none');
+ $uid = $ks->generateUid('Horde_Kolab_Server_Object', array());
+ $this->assertEquals(preg_replace('/[0-9a-f]*/', '', $uid), '');
+ }
/**
* Test creating the server object.
{
$ks = &Horde_Kolab_Server::factory('none');
$user = $ks->fetch('test');
- $this->assertEquals('Horde_Kolab_Server_Object_user', get_class($user));
+ $this->assertEquals('Horde_Kolab_Server_Object_Kolab_User', get_class($user));
$ks = &Horde_Kolab_Server::factory('none', array('uid' => 'test'));
$user = $ks->fetch();
- $this->assertEquals('Horde_Kolab_Server_Object_user', get_class($user));
+ $this->assertEquals('Horde_Kolab_Server_Object_Kolab_User', get_class($user));
}
/**
*/
protected function determineType($uid)
{
- return 'Horde_Kolab_Server_Object_user';
+ return 'Horde_Kolab_Server_Object_Kolab_User';
}
/**
{
$server = &$this->prepareBasicServer($type);
- $result = $server->search('(objectClass=top)', array('objectClass'));
+ $result = $server->search(
+ '(' . Horde_Kolab_Server_Object::ATTRIBUTE_OC
+ . '=' . Horde_Kolab_Server_Object::OBJECTCLASS_TOP . ')',
+ array(Horde_Kolab_Server_Object::ATTRIBUTE_OC));
$result = $result->as_struct();
$this->assertEquals(13, count($result));
- $result = $server->search('(objectClass=top)',
- array('objectClass'),
- 'cn=internal,dc=example,dc=org');
+ $result = $server->search(
+ '(' . Horde_Kolab_Server_Object::ATTRIBUTE_OC
+ . '=' . Horde_Kolab_Server_Object::OBJECTCLASS_TOP . ')',
+ array(Horde_Kolab_Server_Object::ATTRIBUTE_OC),
+ 'cn=internal,dc=example,dc=org');
$result = $result->as_struct();
$this->assertNoError($result);
$this->assertEquals(4, count($result));
$filter = '(&(objectClass=kolabInetOrgPerson)(uid=*)(mail=*)(sn=*))';
$attributes = array(
- Horde_Kolab_Server_Object_base::ATTRIBUTE_SN,
- Horde_Kolab_Server_Object_base::ATTRIBUTE_CN,
- Horde_Kolab_Server_Object::ATTRIBUTE_UID,
- Horde_Kolab_Server_Object_base::ATTRIBUTE_MAIL,
- Horde_Kolab_Server_Object_base::ATTRIBUTE_DELETED,
+ Horde_Kolab_Server_Object_Kolabinetorgperson::ATTRIBUTE_SN,
+ Horde_Kolab_Server_Object_Kolabinetorgperson::ATTRIBUTE_CN,
+ Horde_Kolab_Server_Object_Kolabinetorgperson::ATTRIBUTE_UID,
+ Horde_Kolab_Server_Object_Kolabinetorgperson::ATTRIBUTE_MAIL,
+ Horde_Kolab_Server_Object_Kolabinetorgperson::ATTRIBUTE_DELETED,
);
- $sort = Horde_Kolab_Server_Object_base::ATTRIBUTE_SN;
+ $sort = Horde_Kolab_Server_Object_Kolabinetorgperson::ATTRIBUTE_SN;
$result = $server->search($filter);
$result = $result->as_struct();
$this->assertNoError($result);
$this->assertEquals(2, count($result));
- $result = $server->listObjects('Horde_Kolab_Server_Object_user');
+ $result = $server->listObjects('Horde_Kolab_Server_Object_Kolab_User');
$this->assertNoError($result);
$this->assertEquals(2, count($result));
- $this->assertEquals('Horde_Kolab_Server_Object_user', get_class(array_shift($result)));
+ $this->assertEquals('Horde_Kolab_Server_Object_Kolab_User', get_class(array_shift($result)));
- $result = $server->listObjects('Horde_Kolab_Server_Object_sharedfolder');
+ $result = $server->listObjects('Horde_Kolab_Server_Object_Kolabsharedfolder');
$this->assertNoError($result);
$this->assertEquals(1, count($result));
- $this->assertEquals('Horde_Kolab_Server_Object_sharedfolder', get_class(array_shift($result)));
+ $this->assertEquals('Horde_Kolab_Server_Object_Kolabsharedfolder', get_class(array_shift($result)));
}
/**
$this->assertNoError($classes);
$this->assertContains('top', $classes);
$this->assertContains('kolabinetorgperson', $classes);
- $this->assertContains('hordeperson', $classes);
try {
$classes = $server->getObjectClasses('cn=DOES NOT EXIST,dc=example,dc=org');
$type = $server->determineType('cn=empty.group@example.org,dc=example,dc=org');
$this->assertNoError($type);
- $this->assertEquals('Horde_Kolab_Server_Object_group', $type);
+ $this->assertEquals('Horde_Kolab_Server_Object_Kolabgroupofnames', $type);
$type = $server->determineType('cn=shared@example.org,dc=example,dc=org');
$this->assertNoError($type);
- $this->assertEquals('Horde_Kolab_Server_Object_sharedfolder', $type);
+ $this->assertEquals('Horde_Kolab_Server_Object_Kolabsharedfolder', $type);
$type = $server->determineType('cn=The Administrator,dc=example,dc=org');
$this->assertNoError($type);
- $this->assertEquals('Horde_Kolab_Server_Object_administrator', $type);
+ $this->assertEquals('Horde_Kolab_Server_Object_Kolab_Administrator', $type);
$type = $server->determineType('cn=Main Tainer,dc=example,dc=org');
$this->assertNoError($type);
- $this->assertEquals('Horde_Kolab_Server_Object_maintainer', $type);
+ $this->assertEquals('Horde_Kolab_Server_Object_Kolab_Maintainer', $type);
$type = $server->determineType('cn=Domain Maintainer,dc=example,dc=org');
$this->assertNoError($type);
- $this->assertEquals('Horde_Kolab_Server_Object_domainmaintainer', $type);
+ $this->assertEquals('Horde_Kolab_Server_Object_Kolab_Domainmaintainer', $type);
$type = $server->determineType('cn=Test Address,cn=external,dc=example,dc=org');
$this->assertNoError($type);
- $this->assertEquals('Horde_Kolab_Server_Object_address', $type);
+ $this->assertEquals('Horde_Kolab_Server_Object_Kolab_Address', $type);
$type = $server->determineType('cn=Gunnar Wrobel,dc=example,dc=org');
$this->assertNoError($type);
- $this->assertEquals('Horde_Kolab_Server_Object_user', $type);
+ $this->assertEquals('Horde_Kolab_Server_Object_Kolab_User', $type);
}
/**
$testuser = $server->fetch('cn=Test Test,dc=example,dc=org');
$this->assertNoError($testuser);
$this->assertContains('wrobel@example.org',
- $testuser->get(Horde_Kolab_Server_Object_base::ATTRIBUTE_DELEGATE, false));
+ $testuser->get(Horde_Kolab_Server_Object_Kolabinetorgperson::ATTRIBUTE_DELEGATE, false));
$this->assertNoError($addrs);
$this->assertContains('wrobel@example.org', $addrs);
{
$users = $this->validUsers();
$this->assertEquals('Gunnar Wrobel',
- Horde_Kolab_Server_Object_user::generateId($users[0][0]));
+ Horde_Kolab_Server_Object_Kolab_User::generateId($users[0][0]));
$this->assertEquals('cn=Gunnar Wrobel,dc=example,dc=org',
- $this->server->generateUid('Horde_Kolab_Server_Object_user',
+ $this->server->generateUid('Horde_Kolab_Server_Object_Kolab_User',
$users[0][0]));
}
public function testFetchUser()
{
$user = $this->server->fetch('cn=Gunnar Wrobel,dc=example,dc=org');
- $this->assertEquals('Horde_Kolab_Server_Object_user', get_class($user));
- $this->assertEquals('Gunnar Wrobel', $user->get(Horde_Kolab_Server_Object_base::ATTRIBUTE_FNLN));
+ $this->assertEquals('Horde_Kolab_Server_Object_Kolab_User', get_class($user));
+ $this->assertEquals('Gunnar Wrobel', $user->get(Horde_Kolab_Server_Object_Kolab_User::ATTRIBUTE_FNLN));
}
/**
$this->assertEquals('home.example.org', $imap);
$user = $this->server->fetch('cn=Gunnar Wrobel,dc=example,dc=org');
- $attr = $user->get(Horde_Kolab_Server_Object_base::ATTRIBUTE_FREEBUSYHOST);
+ $attr = $user->get(Horde_Kolab_Server_Object_Kolab_User::ATTRIBUTE_FREEBUSYHOST);
if (is_a($attr, 'PEAR_Error')) {
$this->assertEquals('', $attr->getMessage());
}