[Erp5-report] r13900 - /erp5/trunk/products/ERP5OOo/tests/testIngestion.py

nobody at svn.erp5.org nobody at svn.erp5.org
Tue Apr 3 16:08:18 CEST 2007


Author: nicolas
Date: Tue Apr  3 16:08:11 2007
New Revision: 13900

URL: http://svn.erp5.org?rev=13900&view=rev
Log:
Add test for import object from OOo

Modified:
    erp5/trunk/products/ERP5OOo/tests/testIngestion.py

Modified: erp5/trunk/products/ERP5OOo/tests/testIngestion.py
URL: http://svn.erp5.org/erp5/trunk/products/ERP5OOo/tests/testIngestion.py?rev=13900&r1=13899&r2=13900&view=diff
==============================================================================
--- erp5/trunk/products/ERP5OOo/tests/testIngestion.py (original)
+++ erp5/trunk/products/ERP5OOo/tests/testIngestion.py Tue Apr  3 16:08:11 2007
@@ -44,6 +44,7 @@
 from Products.ERP5Type.tests.Sequence import SequenceList
 from Products.ERP5Type.Cache import clearCache
 from Products.ERP5OOo.Document.OOoDocument import ConversionError
+from ZPublisher.HTTPRequest import FileUpload
 
 
 if __name__ == '__main__':
@@ -129,7 +130,7 @@
     self.createPreferences()
     self.createTools()
     self.unpackData()
-  
+
   def unpackData(self):
     """
       Unpack the content of testIngestion_docs.zip
@@ -404,6 +405,9 @@
   ##################################
   ##  Basic steps
   ##################################
+ 
+  def stepTic(self, sequence=None, sequence_list=None, **kw):
+    self.tic()
 
   def stepCheckPreferences(self, sequence=None, sequence_list=None, **kw):
     """
@@ -858,6 +862,39 @@
         break
     self.failUnless(john_is_owner)
 
+  def stepImportRawDataFile(self, sequence=None, sequence_list=None, **kw):
+    f = makeFileUpload('TEST-en-003.ods')
+    #environ = {'REQUEST_METHOD': 'POST', 'CONTENT_TYPE': 'plain/text'}
+    #file = FileUpload(FieldStorage(fp=f, environ=environ))
+    person_module = self.getPortal().person_module
+    #purge existing persons
+    person_module.manage_delObjects([id for id in person_module.getObjectIds()])
+    get_transaction().commit(); self.tic()
+    listbox=(
+    { 'listbox_key': '001',
+      'portal_type_property_list':'Person.title'},
+    { 'listbox_key': '002',
+      'portal_type_property_list':'Person.first_name'},
+    { 'listbox_key': '003',
+      'portal_type_property_list':'Person.last_name'},
+    { 'listbox_key': '004',
+      'portal_type_property_list':'Person.default_email_text'}
+    )
+    person_module.ERP5Site_importObjectFromOOo(import_file=f, listbox=listbox)
+  
+  def stepCheckActivitiesCount(self, sequence=None, sequence_list=None, **kw):
+    message_list = self.getPortal().portal_activities.getMessageList()
+    #101 objects x 3 (default_email, recursiveImmediateReindexObject, immediateReindexObject) = 303 activities
+    self.assertEqual(303,len(message_list))
+  
+  def stepCheckImportedPersonList(self, sequence=None, sequence_list=None, **kw):
+    person_module = self.getPortal().person_module
+    for i in range(101):
+      object = person_module['%s' % (i+1)]
+      self.assertEqual('John Doe %s' % (i), object.getTitle())
+      self.assertEqual('John', object.getFirstName())
+      self.assertEqual('Doe %s' % (i), object.getLastName())
+      self.assertEqual('john.doe%s at foo.com' % (i), object.getDefaultEmailText())
 
   ##################################
   ##  Tests
@@ -1117,6 +1154,23 @@
     sequence_list.addSequenceString(sequence_string)
     sequence_list.play(self, quiet=quiet)
 
+  def test_12_ImportObjectFromOOoInActivities(self, quiet=QUIET, run=RUN_ALL_TEST):
+    """
+      Simulate import of OOo file true ERP5Site_importObjectFromOOoFastInput
+      For Person Module.
+    """
+    if testrun and 12 not in testrun:return
+    if not run: return
+    if not quiet: shout('test_12_ImportObjectOOoInActivities')
+    sequence_list = SequenceList()
+    step_list = [ 'stepImportRawDataFile'
+                 ,'stepCheckActivitiesCount'
+                 ,'Tic'
+                 ,'stepCheckImportedPersonList'
+                ]
+    sequence_string = ' '.join(step_list)
+    sequence_list.addSequenceString(sequence_string)
+    sequence_list.play(self, quiet=quiet)
 
 if __name__ == '__main__':
   framework()




More information about the Erp5-report mailing list