$cn = $this->objects[0][Horde_Kolab_Server_Object_Organizationalperson::ATTRIBUTE_CN];
- $cn_result = $server->uidForCn($cn);
- $this->assertNoError($cn_result);
-
- $person = $server->fetch($cn_result);
- $this->assertNoError($person);
+ $person = $this->fetchNew($server, $cn);
$this->assertEquals($person->get(Horde_Kolab_Server_Object_Organizationalperson::ATTRIBUTE_JOBTITLE),
'');
$person->save(array(Horde_Kolab_Server_Object_Organizationalperson::ATTRIBUTE_JOBTITLE => 'Teacher'));
- $cn_result = $server->uidForCn($cn);
- $this->assertNoError($cn_result);
-
- $person = $server->fetch($cn_result);
- $this->assertNoError($person);
+ $person = $this->fetchNew($server, $cn);
$this->assertEquals($person->get(Horde_Kolab_Server_Object_Organizationalperson::ATTRIBUTE_JOBTITLE),
'Teacher');
$person->save(array(Horde_Kolab_Server_Object_Organizationalperson::ATTRIBUTE_JOBTITLE => 'öäü/)(="§%$&§§$\'*'));
- $cn_result = $server->uidForCn($cn);
- $this->assertNoError($cn_result);
-
- $person = $server->fetch($cn_result);
- $this->assertNoError($person);
+ $person = $this->fetchNew($server, $cn);
$this->assertEquals($person->get(Horde_Kolab_Server_Object_Organizationalperson::ATTRIBUTE_JOBTITLE),
'öäü/)(="§%$&§§$\'*');
$person->save(array(Horde_Kolab_Server_Object_Organizationalperson::ATTRIBUTE_JOBTITLE => ''));
- $cn_result = $server->uidForCn($cn);
- $this->assertNoError($cn_result);
-
- $person = $server->fetch($cn_result);
- $this->assertNoError($person);
+ $person = $this->fetchNew($server, $cn);
$this->assertEquals($person->get(Horde_Kolab_Server_Object_Organizationalperson::ATTRIBUTE_JOBTITLE),
'');
- $result = $server->delete($cn_result);
+ $result = $server->delete($person->get(Horde_Kolab_Server_Object_Organizationalperson::ATTRIBUTE_UID));
$this->assertNoError($result);
$cn_result = $server->uidForCn($this->objects[0][Horde_Kolab_Server_Object_Organizationalperson::ATTRIBUTE_CN]);
$this->assertNoError($cn_result);
$cn = $this->objects[0][Horde_Kolab_Server_Object_Organizationalperson::ATTRIBUTE_CN];
- $cn_result = $server->uidForCn($cn);
- $this->assertNoError($cn_result);
+ $person = $this->fetchNew($server, $cn);
- $person = $server->fetch($cn_result);
- $this->assertNoError($person);
+ $this->assertEquals($person->get(Horde_Kolab_Server_Object_Organizationalperson::ATTRIBUTE_POSTALADDRESSRAW),
+ 'Kolab_Server_OrgPersonTest_123$$$ ');
+
+ $person->save(array(Horde_Kolab_Server_Object_Organizationalperson::ATTRIBUTE_SN => 'Kolab_Server_OrgPersonTest_456'));
- $this->assertEquals($person->get(Horde_Kolab_Server_Object_Organizationalperson::ATTRIBUTE_POSTALADDRESS),
- 'Kolab_Server_OrgPersonTest_123$$ ');
+ $person = $this->fetchNew($server, $cn);
- $person->save(array(Horde_Kolab_Server_Object_Organizationalperson::ATTRIBUTE_STREET => 'Street 1',
+ $this->assertEquals($person->get(Horde_Kolab_Server_Object_Organizationalperson::ATTRIBUTE_POSTALADDRESSRAW),
+ 'Kolab_Server_OrgPersonTest_456$$$ ');
+
+ $person->save(array(Horde_Kolab_Server_Object_Organizationalperson::ATTRIBUTE_SN => 'Kolab_Server_OrgPersonTest_123',
+ Horde_Kolab_Server_Object_Organizationalperson::ATTRIBUTE_STREET => 'Street 1',
Horde_Kolab_Server_Object_Organizationalperson::ATTRIBUTE_POSTALCODE => '12345',
+ Horde_Kolab_Server_Object_Organizationalperson::ATTRIBUTE_POSTALADDRESS => 'c/o here',
Horde_Kolab_Server_Object_Organizationalperson::ATTRIBUTE_CITY => 'Nowhere'));
- $cn_result = $server->uidForCn($cn);
- $this->assertNoError($cn_result);
+ $person = $this->fetchNew($server, $cn);
- $person = $server->fetch($cn_result);
- $this->assertNoError($person);
-
- $this->assertEquals('Kolab_Server_OrgPersonTest_123$Street 1$12345 Nowhere',
- $person->get(Horde_Kolab_Server_Object_Organizationalperson::ATTRIBUTE_POSTALADDRESS));
+ $this->assertEquals('Kolab_Server_OrgPersonTest_123$c/o here$Street 1$12345 Nowhere',
+ $person->get(Horde_Kolab_Server_Object_Organizationalperson::ATTRIBUTE_POSTALADDRESSRAW));
$person->save(array(Horde_Kolab_Server_Object_Organizationalperson::ATTRIBUTE_POSTOFFICEBOX => 'öäü/)(="§%$&§§$\'*',
Horde_Kolab_Server_Object_Organizationalperson::ATTRIBUTE_STREET => ''));
- $cn_result = $server->uidForCn($cn);
- $this->assertNoError($cn_result);
-
- $person = $server->fetch($cn_result);
- $this->assertNoError($person);
+ $person = $this->fetchNew($server, $cn);
- $this->assertEquals('Kolab_Server_OrgPersonTest_123$öäü/)(="§%\5c24&§§\5c24\'*$12345 Nowhere',
- $person->get(Horde_Kolab_Server_Object_Organizationalperson::ATTRIBUTE_POSTALADDRESS));
+ $this->assertEquals('Kolab_Server_OrgPersonTest_123$c/o here$öäü/)(="§%\5c24&§§\5c24\'*$12345 Nowhere',
+ $person->get(Horde_Kolab_Server_Object_Organizationalperson::ATTRIBUTE_POSTALADDRESSRAW));
$person->save(array(Horde_Kolab_Server_Object_Organizationalperson::ATTRIBUTE_STREET => '',
Horde_Kolab_Server_Object_Organizationalperson::ATTRIBUTE_POSTALCODE => '',
+ Horde_Kolab_Server_Object_Organizationalperson::ATTRIBUTE_POSTALADDRESS => '',
Horde_Kolab_Server_Object_Organizationalperson::ATTRIBUTE_POSTOFFICEBOX => '',
Horde_Kolab_Server_Object_Organizationalperson::ATTRIBUTE_CITY => ''));
- $cn_result = $server->uidForCn($cn);
- $this->assertNoError($cn_result);
+ $person = $this->fetchNew($server, $cn);
- $person = $server->fetch($cn_result);
- $this->assertNoError($person);
-
- $this->assertEquals('Kolab_Server_OrgPersonTest_123$$ ',
- $person->get(Horde_Kolab_Server_Object_Organizationalperson::ATTRIBUTE_POSTALADDRESS));
+ $this->assertEquals('Kolab_Server_OrgPersonTest_123$$$ ',
+ $person->get(Horde_Kolab_Server_Object_Organizationalperson::ATTRIBUTE_POSTALADDRESSRAW));
$result = $server->delete($cn_result);
$this->assertNoError($result);
$this->assertNoError($cn_result);
$this->assertFalse($server->uidForCn($this->objects[0][Horde_Kolab_Server_Object_Organizationalperson::ATTRIBUTE_CN]));
}
+
+ private function fetchNew($server, $cn)
+ {
+ $cn_result = $server->uidForCn($cn);
+ $this->assertNoError($cn_result);
+
+ $person = $server->fetch($cn_result);
+ $this->assertNoError($person);
+
+ return $person;
+ }
}