[Erp5-report] r13208 - /erp5/trunk/products/ERP5/tests/testPerson.py

nobody at svn.erp5.org nobody at svn.erp5.org
Sat Mar 3 14:39:19 CET 2007


Author: jerome
Date: Sat Mar  3 14:39:16 2007
New Revision: 13208

URL: http://svn.erp5.org?rev=13208&view=rev
Log:
tests for the behaviour of first_name, last_name & title for Person documents


Modified:
    erp5/trunk/products/ERP5/tests/testPerson.py

Modified: erp5/trunk/products/ERP5/tests/testPerson.py
URL: http://svn.erp5.org/erp5/trunk/products/ERP5/tests/testPerson.py?rev=13208&r1=13207&r2=13208&view=diff
==============================================================================
--- erp5/trunk/products/ERP5/tests/testPerson.py (original)
+++ erp5/trunk/products/ERP5/tests/testPerson.py Sat Mar  3 14:39:16 2007
@@ -57,20 +57,24 @@
     return ('erp5_base',)
   
   def afterSetUp(self):
+    self.portal = self.getPortal()
     self.login()
-    
+  
   def login(self, quiet=0, run=run_all_test):
     uf = self.getPortal().acl_users
     uf._doAddUser('seb', '', ['Manager'], [])
     uf._doAddUser('ERP5TypeTestCase', '', ['Manager'], [])
     user = uf.getUserById('seb').__of__(uf)
     newSecurityManager(None, user)
+  
+  def _makeOne(self, *args, **kw):
+    from Products.ERP5Type.Document.Person import Person
+    return Person(*args, **kw).__of__(self.portal)
 
   def test_01_CopyPastePersonObject(self, quiet=0, run=run_all_test):
     """ Test copy/paste a Person object. """
     if not run:
       return
-    portal = self.getPortal()
     person_module = self.getPersonModule()
     person = person_module.newContent(portal_type='Person')
     person.setReference('ivan')
@@ -93,6 +97,43 @@
     ## its reference must NOT be resetted
     self.assertEquals(person_copy_obj.getReference(), person.getReference())
 
+  # title & first_name, last_name
+  def testEmptyTitle(self):
+    p = self._makeOne('person')
+    self.assertEquals('', p.getTitle())
+  
+  def testSetFirstName(self):
+    p = self._makeOne('person')
+    p.setFirstName('first')
+    self.assertEquals('first', p.getFirstName())
+
+  def testSetLastName(self):
+    p = self._makeOne('person')
+    p.setLastName('last')
+    self.assertEquals('last', p.getLastName())
+
+  def testTitleFromFirstLastName(self):
+    p = self._makeOne('person')
+    p.setFirstName('first')
+    p.setLastName('last')
+    self.assertEquals('first last', p.getTitle())
+
+  def testEditFirstNameLastName(self):
+    # using 'edit' method
+    p = self._makeOne('person')
+    p.edit( first_name='first',
+            last_name='last' )
+    self.assertEquals('first', p.getFirstName())
+    self.assertEquals('last', p.getLastName())
+    self.assertEquals('first last', p.getTitle())
+
+  def testEditTitleFirstNameLastName(self):
+    p = self._makeOne('person')
+    p.edit( first_name='first',
+            last_name='last',
+            title='title' )
+    # no infinite loop :) but there's no guarantee on the behaviour
+
 if __name__ == '__main__':
     framework()
 else:




More information about the Erp5-report mailing list