Example #1
0
 function Test_of_decomposeCombinedAttributes()
 {
     $User = new AkTestUser();
     $User->addCombinedAttributeConfiguration('name', "%s %s", 'first_name', 'last_name');
     $User->addCombinedAttributeConfiguration('reversed_name', "%[^,], %s", 'last_name', 'first_name');
     $User->addCombinedAttributeConfiguration('email_link', array("callBackFunctionCompose", "callBackFunctionDecompose"), 'email', 'name');
     $User->addCombinedAttributeConfiguration('email_header_from', "<%s>%s", 'email', 'name');
     $User->name = 'Bermi Ferrer';
     $User->decomposeCombinedAttributes();
     $this->assertEqual($User->getAttribute('first_name'), 'Bermi');
     $this->assertEqual($User->last_name, 'Ferrer');
     $User->email_link = "<a href='mailto:nospam@example.com'>Hilario Hervas</a>";
     $User->decomposeCombinedAttributes();
     $this->assertEqual($User->first_name, 'Hilario');
     $this->assertEqual($User->last_name, 'Hervas');
     $this->assertEqual($User->name, 'Hilario Hervas');
     $this->assertEqual($User->email, '*****@*****.**');
     $User->name = 'Wont Precede';
     $User->email_link = "<a href='mailto:nospam-again@example.com'>Must Precede</a>";
     $User->decomposeCombinedAttributes();
     $this->assertEqual($User->getAttribute('name'), 'Must Precede');
     $this->assertEqual($User->getAttribute('email'), '*****@*****.**');
 }