[Erp5-report] r35295 nicolas - /erp5/trunk/products/ERP5/tests/testCRM.py

nobody at svn.erp5.org nobody at svn.erp5.org
Thu May 13 11:41:23 CEST 2010


Author: nicolas
Date: Thu May 13 11:41:23 2010
New Revision: 35295

URL: http://svn.erp5.org?rev=35295&view=rev
Log:
* Use _getConversionServerDict method to read oood server configuration
* replace text_format by content_type
* Use FileUpload class to wrap files.


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

Modified: erp5/trunk/products/ERP5/tests/testCRM.py
URL: http://svn.erp5.org/erp5/trunk/products/ERP5/tests/testCRM.py?rev=35295&r1=35294&r2=35295&view=diff
==============================================================================
--- erp5/trunk/products/ERP5/tests/testCRM.py [utf8] (original)
+++ erp5/trunk/products/ERP5/tests/testCRM.py [utf8] Thu May 13 11:41:23 2010
@@ -33,16 +33,18 @@
 import transaction
 
 from Products.CMFCore.WorkflowCore import WorkflowException
-from Products.ERP5Type.tests.utils import DummyMailHost
-from Products.ERP5Type.tests.ERP5TypeTestCase import ERP5TypeTestCase
-from Products.ERP5OOo.tests.testIngestion import conversion_server_host
+from Products.ERP5Type.tests.utils import DummyMailHost, FileUpload
+from Products.ERP5Type.tests.ERP5TypeTestCase import ERP5TypeTestCase,\
+                                                       _getConversionServerDict
 from Products.ERP5OOo.tests.testIngestion import FILE_NAME_REGULAR_EXPRESSION
 from Products.ERP5OOo.tests.testIngestion import REFERENCE_REGULAR_EXPRESSION
 
-TEST_HOME = os.path.dirname(__file__)
-
-def openTestFile(filename):
-  return file(os.path.join(TEST_HOME, 'test_data', 'crm_emails', filename))
+def makeFilePath(name):
+  return os.path.join(os.path.dirname(__file__), 'test_data', 'crm_emails', name)
+
+def makeFileUpload(name):
+  path = makeFilePath(name)
+  return FileUpload(path, name)
 
 clear_module_name_list = """
 campaign_module
@@ -345,7 +347,7 @@
                                                   follow_up=ticket_url,
                                                   title='Event Title',
                                                   text_content='Event Content',
-                                                  text_format='text/plain')
+                                                  content_type='text/plain')
       transaction.commit()
       self.tic()
       self.assertEqual(len(event.getCausalityRelatedValueList()), 0)
@@ -358,7 +360,7 @@
       self.assertEqual(len(event.getCausalityRelatedValueList()), 1)
       new_event = event.getCausalityRelatedValue()
       self.assertEqual(new_event.getFollowUp(), ticket_url)
-      self.assertEqual(new_event.getTextFormat(), 'text/plain')
+      self.assertEqual(new_event.getContentType(), 'text/plain')
       self.assertEqual(new_event.getTextContent(), '> Event Content')
       self.assertEqual(new_event.getTitle(), 'Re: Event Title')
 
@@ -458,13 +460,14 @@
     self.assertEquals(len(self.portal.event_module), 1)
     self.assertEquals(event, self.portal.event_module.contentValues()[0])
     self.assertEquals('Mail Message', event.getPortalType())
-    self.assertEquals('message/rfc822', event.getContentType())
+    self.assertEquals('text/plain', event.getContentType())
+    self.assertEquals('message/rfc822', event._baseGetContentType())
     # check if parsing of metadata from content is working
     content_dict = {'source_list': ['person_module/sender'],
                     'destination_list': ['person_module/me',
                                          'person_module/he']}
     self.assertEquals(event.getPropertyDictFromContent(), content_dict)
-  
+
   def test_title(self):
     # title is found automatically, based on the Subject: header in the mail
     event = self._ingestMail('simple')
@@ -632,7 +635,7 @@
     self.assertTrue('<form' not in document.getAttachmentData(4))
     self.assertEquals('This is my content.\n*ERP5* is a Free _Software_\n',
                       document.getAttachmentData(2))
-    self.assertEquals('text/html', document.getTextFormat())
+    self.assertEquals('text/html', document.getContentType())
     self.assertEquals('\n<html>\n<head>\n\n<meta http-equiv="content-type"'\
                       ' content="text/html; charset=utf-8" />\n'\
                       '</head>\n<body text="#000000"'\
@@ -649,7 +652,7 @@
                       mixed_document.getTextContent())
     self.assertEquals('Hi, this is the Message.\nERP5 is a free software.\n\n',
                       mixed_document.getTextContent())
-    self.assertEquals('text/plain', mixed_document.getTextFormat())
+    self.assertEquals('text/plain', mixed_document.getContentType())
 
 
 ## TODO:
@@ -702,8 +705,9 @@
 
     # set preference
     default_pref = self.portal.portal_preferences.default_site_preference
-    default_pref.setPreferredOoodocServerAddress(conversion_server_host[0])
-    default_pref.setPreferredOoodocServerPortNumber(conversion_server_host[1])
+    conversion_dict = _getConversionServerDict()
+    default_pref.setPreferredOoodocServerAddress(conversion_dict['hostname'])
+    default_pref.setPreferredOoodocServerPortNumber(conversion_dict['port'])
     default_pref.setPreferredDocumentFileNameRegularExpression(FILE_NAME_REGULAR_EXPRESSION)
     default_pref.setPreferredDocumentReferenceRegularExpression(REFERENCE_REGULAR_EXPRESSION)
     if default_pref.getPreferenceState() == 'disabled':
@@ -823,7 +827,7 @@
     event = self.portal.event_module.newContent(portal_type='Mail Message')
     event.setSource('person_module/me')
     event.setDestination('person_module/recipient')
-    event.setTextFormat('text/html')
+    event.setContentType('text/html')
     event.setTextContent('Hello<br/>World')
     self.portal.portal_workflow.doActionFor(event, 'start_action',
                                             send_mail=1)
@@ -877,7 +881,7 @@
     # Add a document which will be attached.
 
     def add_document(filename, id, container, portal_type):
-      f = openTestFile(filename)
+      f = makeFileUpload(filename)
       document = container.newContent(id=id, portal_type=portal_type)
       document.edit(file=f, reference=filename)
       return document
@@ -933,7 +937,7 @@
     # Add a document which will be attached.
 
     def add_document(filename, id, container, portal_type):
-      f = openTestFile(filename)
+      f = makeFileUpload(filename)
       document = container.newContent(id=id, portal_type=portal_type)
       document.edit(file=f, reference=filename)
       return document
@@ -989,7 +993,7 @@
     # Add a document which will be attached.
 
     def add_document(filename, id, container, portal_type):
-      f = openTestFile(filename)
+      f = makeFileUpload(filename)
       document = container.newContent(id=id, portal_type=portal_type)
       document.edit(file=f, reference=filename)
       return document
@@ -1045,7 +1049,7 @@
     # Add a document which will be attached.
 
     def add_document(filename, id, container, portal_type):
-      f = openTestFile(filename)
+      f = makeFileUpload(filename)
       document = container.newContent(id=id, portal_type=portal_type)
       document.edit(file=f, reference=filename)
       return document
@@ -1197,7 +1201,7 @@
     # Add a document on a person which will be attached.
 
     def add_document(filename, id, container, portal_type):
-      f = openTestFile(filename)
+      f = makeFileUpload(filename)
       document = container.newContent(id=id, portal_type=portal_type)
       document.edit(file=f, reference=filename)
       return document
@@ -1234,6 +1238,7 @@
     for i in message.get_payload():
       if i.get_content_type()=='text/plain':
         part = i
+        break
     self.assertEqual(part.get_payload(decode=True), event.getTextContent())
 
     # Check attachment
@@ -1255,7 +1260,7 @@
     # Add a document on a person which will be attached.
 
     def add_document(filename, id, container, portal_type):
-      f = openTestFile(filename)
+      f = makeFileUpload(filename)
       document = container.newContent(id=id, portal_type=portal_type)
       document.edit(file=f, reference=filename)
       return document




More information about the Erp5-report mailing list