[Erp5-report] r41493 nicolas - /erp5/trunk/products/ERP5/tests/testCRM.py
nobody at svn.erp5.org
nobody at svn.erp5.org
Thu Dec 16 12:01:34 CET 2010
Author: nicolas
Date: Thu Dec 16 12:01:34 2010
New Revision: 41493
URL: http://svn.erp5.org?rev=41493&view=rev
Log:
* Run activities after ingestion.
Because discoverMedata may change the portal_type of ingested Event.
* Get the last event according creation_date
* It has been decided to no hide portal_type added in Subject or in Body parts of message.
getTitle() == 'Visit:Company A' even if 'Visit:' is a keyword to help contribution_tool
to Construct Visit portal_type during ingestion process.
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=41493&r1=41492&r2=41493&view=diff
==============================================================================
--- erp5/trunk/products/ERP5/tests/testCRM.py [utf8] (original)
+++ erp5/trunk/products/ERP5/tests/testCRM.py [utf8] Thu Dec 16 12:01:34 2010
@@ -573,63 +573,85 @@ class TestCRMMailIngestion(BaseTestCRM):
Make sure that ingested email will be correctly converted to
appropriate portal type by email metadata.
"""
+ def getLastCreatedEvent(module):
+ object_list = module.contentValues()
+ object_list.sort(key=lambda e:e.getCreationDate())
+ return object_list[-1]
+
+ portal = self.portal
message = email.message_from_string(self._readTestData('simple'))
message.replace_header('subject', 'Visit:Company A')
data = message.as_string()
- document = self._ingestMail(data=data)
+ self._ingestMail(data=data)
+ transaction.commit()
+ self.tic()
+ document = getLastCreatedEvent(portal.event_module)
self.assertEqual(document.getPortalType(), 'Visit')
- self.assertEqual(document.getTitle(), 'Company A')
message = email.message_from_string(self._readTestData('simple'))
message.replace_header('subject', 'Fax:Company B')
data = message.as_string()
- document = self._ingestMail(data=data)
+ self._ingestMail(data=data)
+ transaction.commit()
+ self.tic()
+ document = getLastCreatedEvent(portal.event_module)
self.assertEqual(document.getPortalType(), 'Fax Message')
- self.assertEqual(document.getTitle(), 'Company B')
message = email.message_from_string(self._readTestData('simple'))
message.replace_header('subject', 'TEST:Company B')
data = message.as_string()
- document = self._ingestMail(data=data)
+ self._ingestMail(data=data)
+ transaction.commit()
+ self.tic()
+ document = getLastCreatedEvent(portal.event_module)
self.assertEqual(document.getPortalType(), 'Mail Message')
- self.assertEqual(document.getTitle(), 'TEST:Company B')
message = email.message_from_string(self._readTestData('simple'))
message.replace_header('subject', 'visit:Company A')
data = message.as_string()
- document = self._ingestMail(data=data)
+ self._ingestMail(data=data)
+ transaction.commit()
+ self.tic()
+ document = getLastCreatedEvent(portal.event_module)
self.assertEqual(document.getPortalType(), 'Visit')
- self.assertEqual(document.getTitle(), 'Company A')
message = email.message_from_string(self._readTestData('simple'))
message.replace_header('subject', 'phone:Company B')
data = message.as_string()
- document = self._ingestMail(data=data)
+ self._ingestMail(data=data)
+ transaction.commit()
+ self.tic()
+ document = portal.event_module[portal.event_module.objectIds()[-1]]
self.assertEqual(document.getPortalType(), 'Phone Call')
- self.assertEqual(document.getTitle(), 'Company B')
message = email.message_from_string(self._readTestData('simple'))
message.replace_header('subject', 'LETTER:Company C')
data = message.as_string()
- document = self._ingestMail(data=data)
+ self._ingestMail(data=data)
+ transaction.commit()
+ self.tic()
+ document = getLastCreatedEvent(portal.event_module)
self.assertEqual(document.getPortalType(), 'Letter')
- self.assertEqual(document.getTitle(), 'Company C')
message = email.message_from_string(self._readTestData('simple'))
body = message.get_payload()
message.set_payload('Visit:%s' % body)
data = message.as_string()
- document = self._ingestMail(data=data)
+ self._ingestMail(data=data)
+ transaction.commit()
+ self.tic()
+ document = getLastCreatedEvent(portal.event_module)
self.assertEqual(document.getPortalType(), 'Visit')
- self.assertEqual(document.getTextContent(), body)
message = email.message_from_string(self._readTestData('simple'))
body = message.get_payload()
message.set_payload('PHONE CALL:%s' % body)
data = message.as_string()
- document = self._ingestMail(data=data)
+ self._ingestMail(data=data)
+ transaction.commit()
+ self.tic()
+ document = getLastCreatedEvent(portal.event_module)
self.assertEqual(document.getPortalType(), 'Phone Call')
- self.assertEqual(document.getTextContent(), body)
def test_forwarder_mail(self):
"""
More information about the Erp5-report
mailing list