From c68bb495fb1777f2fbbb0f6b018e92ce0c0c3211 Mon Sep 17 00:00:00 2001 From: Gunnar Wrobel
Date: Sat, 11 Apr 2009 09:26:07 +0200 Subject: [PATCH] Test handling of the name suffix and the phone number handling. --- .../test/Horde/Kolab/Server/PersonTest.php | 128 +++++++++++++++++++++ 1 file changed, 128 insertions(+) diff --git a/framework/Kolab_Server/test/Horde/Kolab/Server/PersonTest.php b/framework/Kolab_Server/test/Horde/Kolab/Server/PersonTest.php index 675383da4..db3c77dbb 100644 --- a/framework/Kolab_Server/test/Horde/Kolab/Server/PersonTest.php +++ b/framework/Kolab_Server/test/Horde/Kolab/Server/PersonTest.php @@ -80,6 +80,14 @@ class Horde_Kolab_Server_PersonTest extends Horde_Kolab_Test_Server Horde_Kolab_Server_Object_Person::ATTRIBUTE_SN => 'Kolab_Server_PersonTest_cncn', Horde_Kolab_Server_Object_Person::ATTRIBUTE_USERPASSWORD => 'Kolab_Server_PersonTest_cncn', ), + /* Person with name suffix*/ + array( + 'type' => 'Horde_Kolab_Server_Object_Person', + Horde_Kolab_Server_Object_Person::ATTRIBUTE_CN => 'Kolab_Server_PersonTest_123', + Horde_Kolab_Server_Object_Person::ATTRIBUTE_SN => 'Kolab_Server_PersonTest_123', + Horde_Kolab_Server_Object_Person::ATTRIBUTE_SNSUFFIX => 'Kolab_Server_PersonTest_suffix', + Horde_Kolab_Server_Object_Person::ATTRIBUTE_USERPASSWORD => 'Kolab_Server_PersonTest_123', + ), ); /** @@ -240,4 +248,124 @@ class Horde_Kolab_Server_PersonTest extends Horde_Kolab_Test_Server $this->assertNoError($cn_result); $this->assertFalse($server->uidForCn($this->objects[5][Horde_Kolab_Server_Object_Person::ATTRIBUTE_CN])); } + + /** + * Test a person with a name suffix. + * + * @dataProvider provideServers + * + * @return NULL + */ + public function testHandlePersonWithSuffix($server) + { + $result = $server->add($this->objects[6]); + $this->assertNoError($result); + + $cn_result = $server->uidForCn($this->objects[6][Horde_Kolab_Server_Object_Person::ATTRIBUTE_CN]); + $this->assertNoError($cn_result); + $person = $server->fetch($cn_result); + $this->assertEquals($this->objects[6][Horde_Kolab_Server_Object_Person::ATTRIBUTE_SN], + $person->get(Horde_Kolab_Server_Object_Person::ATTRIBUTE_SN)); + $this->assertEquals($this->objects[6][Horde_Kolab_Server_Object_Person::ATTRIBUTE_SNSUFFIX], + $person->get(Horde_Kolab_Server_Object_Person::ATTRIBUTE_SNSUFFIX)); + + $person->save(array(Horde_Kolab_Server_Object_Person::ATTRIBUTE_SN => 'Kolab_Server_PersonTest_123$123', + Horde_Kolab_Server_Object_Person::ATTRIBUTE_SNSUFFIX => 'Kolab_Server_PersonTest_123$123')); + + $cn_result = $server->uidForCn($this->objects[6][Horde_Kolab_Server_Object_Person::ATTRIBUTE_CN]); + $this->assertNoError($cn_result); + $person = $server->fetch($cn_result); + $this->assertEquals('Kolab_Server_PersonTest_123$123', + $person->get(Horde_Kolab_Server_Object_Person::ATTRIBUTE_SN)); + $this->assertEquals('Kolab_Server_PersonTest_123$123', + $person->get(Horde_Kolab_Server_Object_Person::ATTRIBUTE_SNSUFFIX)); + + $person->save(array(Horde_Kolab_Server_Object_Person::ATTRIBUTE_SN => 'Kolab_Server_PersonTest_123$456', + Horde_Kolab_Server_Object_Person::ATTRIBUTE_SNSUFFIX => '')); + + $cn_result = $server->uidForCn($this->objects[6][Horde_Kolab_Server_Object_Person::ATTRIBUTE_CN]); + $this->assertNoError($cn_result); + $person = $server->fetch($cn_result); + $this->assertEquals('Kolab_Server_PersonTest_123$456', + $person->get(Horde_Kolab_Server_Object_Person::ATTRIBUTE_SN)); + $this->assertEquals('', + $person->get(Horde_Kolab_Server_Object_Person::ATTRIBUTE_SNSUFFIX)); + + try { + $person->save(array(Horde_Kolab_Server_Object_Person::ATTRIBUTE_SN => '', + Horde_Kolab_Server_Object_Person::ATTRIBUTE_SNSUFFIX => 'test')); + } catch (Horde_Kolab_Server_Object_Exception $e) { + $this->assertError($e); + } + + $result = $server->delete($cn_result); + $this->assertNoError($result); + $cn_result = $server->uidForCn($this->objects[6][Horde_Kolab_Server_Object_Person::ATTRIBUTE_CN]); + $this->assertNoError($cn_result); + $this->assertFalse($server->uidForCn($this->objects[6][Horde_Kolab_Server_Object_Person::ATTRIBUTE_CN])); + } + + /** + * Test handling a phone number. + * + * @dataProvider provideServers + * + * @return NULL + */ + public function testHandlingAPhoneNumaber($server) + { + $result = $server->add($this->objects[6]); + $this->assertNoError($result); + + $cn = $this->objects[6][Horde_Kolab_Server_Object_Person::ATTRIBUTE_CN]; + + $cn_result = $server->uidForCn($cn); + $this->assertNoError($cn_result); + + $person = $server->fetch($cn_result); + $this->assertNoError($person); + + $this->assertEquals($person->get(Horde_Kolab_Server_Object_Person::ATTRIBUTE_TELNO), + ''); + + $person->save(array(Horde_Kolab_Server_Object_Person::ATTRIBUTE_TELNO => '123456789')); + + $cn_result = $server->uidForCn($cn); + $this->assertNoError($cn_result); + + $person = $server->fetch($cn_result); + $this->assertNoError($person); + + $this->assertEquals($person->get(Horde_Kolab_Server_Object_Person::ATTRIBUTE_TELNO), + '123456789'); + + $person->save(array(Horde_Kolab_Server_Object_Person::ATTRIBUTE_TELNO => '1234567890')); + + $cn_result = $server->uidForCn($cn); + $this->assertNoError($cn_result); + + $person = $server->fetch($cn_result); + $this->assertNoError($person); + + $this->assertEquals($person->get(Horde_Kolab_Server_Object_Person::ATTRIBUTE_TELNO), + '1234567890'); + + + $person->save(array(Horde_Kolab_Server_Object_Person::ATTRIBUTE_TELNO => '')); + + $cn_result = $server->uidForCn($cn); + $this->assertNoError($cn_result); + + $person = $server->fetch($cn_result); + $this->assertNoError($person); + + $this->assertEquals($person->get(Horde_Kolab_Server_Object_Person::ATTRIBUTE_TELNO), + ''); + + $result = $server->delete($cn_result); + $this->assertNoError($result); + $cn_result = $server->uidForCn($this->objects[6][Horde_Kolab_Server_Object_Person::ATTRIBUTE_CN]); + $this->assertNoError($cn_result); + $this->assertFalse($server->uidForCn($this->objects[6][Horde_Kolab_Server_Object_Person::ATTRIBUTE_CN])); + } } -- 2.11.0