[Erp5-report] r21492 - /erp5/trunk/products/ERP5/tests/

nobody at svn.erp5.org nobody at svn.erp5.org
Wed Jun 11 14:37:19 CEST 2008


Author: jerome
Date: Wed Jun 11 14:37:18 2008
New Revision: 21492

URL: http://svn.erp5.org?rev=21492&view=rev
Log:
Use ERP5ReportTestCase instead of duplicating code
( testCrmReports: use afterSetUp / beforeTearDown instead of overriding setUp and tearDown )

Modified:
    erp5/trunk/products/ERP5/tests/testAccountingReports.py
    erp5/trunk/products/ERP5/tests/testCrmReports.py
    erp5/trunk/products/ERP5/tests/testTradeReports.py

Modified: erp5/trunk/products/ERP5/tests/testAccountingReports.py
URL: http://svn.erp5.org/erp5/trunk/products/ERP5/tests/testAccountingReports.py?rev=21492&r1=21491&r2=21492&view=diff
==============================================================================
--- erp5/trunk/products/ERP5/tests/testAccountingReports.py (original)
+++ erp5/trunk/products/ERP5/tests/testAccountingReports.py Wed Jun 11 14:37:18 2008
@@ -34,9 +34,10 @@
 from DateTime import DateTime
 
 from Products.ERP5.tests.testAccounting import AccountingTestCase
-
-
-class TestAccountingReports(AccountingTestCase):
+from Products.ERP5Type.tests.ERP5TypeTestCase import ERP5ReportTestCase
+
+
+class TestAccountingReports(AccountingTestCase, ERP5ReportTestCase):
   """Test Accounting reports
   
   Test basic cases of gathering data to render reports, the purpose of those
@@ -58,40 +59,6 @@
     self.portal.erp5_sql_connection.manage_test('TRUNCATE TABLE stock')
     get_transaction().commit()
 
-  # utility methods for ERP5 Report
-  def getReportSectionList(self, report_name):
-    """Get the list of report sections in a report."""
-    report = getattr(self.portal, report_name)
-    report_method = getattr(self.portal, report.report_method)
-    return report_method()
-
-  def getListBoxLineList(self, report_section):
-    """Render the listbox in a report section, return None if no listbox exists
-    in the report_section.
-    """
-    result = None
-    here = report_section.getObject(self.portal)
-    report_section.pushReport(self.portal)
-    form = getattr(here, report_section.getFormId())
-    if form.has_field('listbox'):
-      result = form.listbox.get_value('default',
-                                      render_format='list',
-                                      REQUEST=self.portal.REQUEST)
-    report_section.popReport(self.portal)
-    return result
-
-  def checkLineProperties(self, line, **kw):
-    """Check properties of a report line.
-    """
-    diff_list = []
-    for k, v in kw.items():
-      if v != line.getColumnProperty(k):
-        diff_list.append('`%s`: expected: %r actual: %r' %
-                                (k, v, line.getColumnProperty(k)))
-    if diff_list:
-      self.fail('Lines differs:\n' + '\n'.join(diff_list))
-
-    
   def testJournal(self):
     # Journal report.
     # this will be a journal for 2006/02/02, for Sale Invoice Transaction

Modified: erp5/trunk/products/ERP5/tests/testCrmReports.py
URL: http://svn.erp5.org/erp5/trunk/products/ERP5/tests/testCrmReports.py?rev=21492&r1=21491&r2=21492&view=diff
==============================================================================
--- erp5/trunk/products/ERP5/tests/testCrmReports.py (original)
+++ erp5/trunk/products/ERP5/tests/testCrmReports.py Wed Jun 11 14:37:18 2008
@@ -31,12 +31,12 @@
 """Tests Standards ERP5 Crm Reports
 """
 import unittest
-from Products.ERP5Type.tests.ERP5TypeTestCase import ERP5TypeTestCase
+from Products.ERP5Type.tests.ERP5TypeTestCase import ERP5ReportTestCase
 from Products.ERP5Type.tests.utils import reindex
 from AccessControl.SecurityManagement import newSecurityManager
 from DateTime import DateTime
 
-class CrmTestCase(ERP5TypeTestCase):
+class CrmTestCase(ERP5ReportTestCase):
   """Tests starts with a preference activated for self.my_organisation, logged in
   as a user with Assignee, Assignor and Author role.
 
@@ -155,11 +155,9 @@
     user = uf.getUserById('manager').__of__(uf)
     newSecurityManager(None, user)
 
-  def setUp(self):
+  def afterSetUp(self):
     """Setup the fixture.
     """
-    ERP5TypeTestCase.setUp(self)
-    self.portal = self.getPortal()
     self.event_module = self.portal.event_module
     self.campaign_module = self.portal.campaign_module
     self.meeting_module = self.portal.meeting_module
@@ -168,7 +166,6 @@
     self.organisation_module = self.portal.organisation_module
     self.person_module = self.portal.person_module
     self.portal_categories = self.portal.portal_categories
-
  
     # create group category
     if not self.portal_categories['group'].has_key('demo_group'): 
@@ -233,7 +230,7 @@
     self.tic()
 
 
-  def tearDown(self):
+  def beforeTearDown(self):
     """Remove all documents.
     """
     get_transaction().abort()
@@ -255,7 +252,6 @@
                       
     get_transaction().commit()
     self.tic()
-    ERP5TypeTestCase.tearDown(self)
 
   def getBusinessTemplateList(self):
     """Returns list of BT to be installed."""
@@ -275,36 +271,6 @@
   """
   def getTitle(self):
     return "Crm Reports"
-
-  # utility methods for ERP5 Report -> TODO move in framework !
-  def getReportSectionList(self, report_name):
-    """Get the list of report sections in a report."""
-    report = getattr(self.portal, report_name)
-    report_method = getattr(self.portal, report.report_method)
-    return report_method()
-
-  def getListBoxLineList(self, report_section):
-    """Render the listbox in a report section, return None if no listbox exists
-    in the report_section.
-    """
-    result = None
-    here = report_section.getObject(self.portal)
-    report_section.pushReport(self.portal)
-    form = getattr(here, report_section.getFormId())
-    if form.has_field('listbox'):
-      result = form.listbox.get_value('default',
-                                      render_format='list',
-                                      REQUEST=self.portal.REQUEST)
-    report_section.popReport(self.portal)
-    return result
-
-  def checkLineProperties(self, line, **kw):
-    """Check properties of a report line.
-    """
-    for k, v in kw.items():
-      self.assertEquals(v, line.getColumnProperty(k),
-          '`%s`: expected: %r actual: %r' % (k, v, line.getColumnProperty(k)))
-  # /utility methods for ERP5 Report
 
   def testCampaignStatus(self):
     # Campaign Status report.

Modified: erp5/trunk/products/ERP5/tests/testTradeReports.py
URL: http://svn.erp5.org/erp5/trunk/products/ERP5/tests/testTradeReports.py?rev=21492&r1=21491&r2=21492&view=diff
==============================================================================
--- erp5/trunk/products/ERP5/tests/testTradeReports.py (original)
+++ erp5/trunk/products/ERP5/tests/testTradeReports.py Wed Jun 11 14:37:18 2008
@@ -29,12 +29,12 @@
 """Tests Standards ERP5 Trade Reports
 """
 import unittest
-from Products.ERP5Type.tests.ERP5TypeTestCase import ERP5TypeTestCase
+from Products.ERP5Type.tests.ERP5TypeTestCase import ERP5ReportTestCase
 from Products.ERP5Type.tests.utils import reindex
 from AccessControl.SecurityManagement import newSecurityManager
 from DateTime import DateTime
 
-class TestTradeReports(ERP5TypeTestCase):
+class TestTradeReports(ERP5ReportTestCase):
   """Test Trade reports
   """
   def getTitle(self):
@@ -201,15 +201,6 @@
       
     return sale_order
       
-
-  def checkLineProperties(self, line, **kw):
-    """Check properties of a report line.
-    """
-    for k, v in kw.items():
-      self.assertEquals(v, line.getColumnProperty(k),
-          '`%s`: expected: %r actual: %r' % (k, v, line.getColumnProperty(k)))
-  # /utility methods for ERP5 Report
-
   def testSaleOrderReport(self):
     """
     Sale order report.
@@ -471,30 +462,6 @@
                  'total quantity': None}
     self.checkLineProperties(stat_line_list[0],**d)
 
-  # utility methods for ERP5 Report
-  def getReportSectionList(self, context, report_name):
-    """Get the list of report sections in a report."""
-    report = getattr(context, report_name)
-    report_method = getattr(context, report.report_method)
-    return report_method()
-
-  def getListBoxLineList(self, report_section):
-    """Render the listbox in a report section, return None if no listbox exists
-    in the report_section.
-    """
-    result = None
-    here = report_section.getObject(self.portal)
-    report_section.pushReport(self.portal)
-    form = getattr(here, report_section.getFormId())
-    if form.has_field('listbox'):
-      result = form.listbox.get_value('default',
-                                      render_format='list',
-                                      REQUEST=self.portal.REQUEST)
-    report_section.popReport(self.portal)
-    return result
-
-        
-
   def testStockReport(self):
     """
     Stock report.




More information about the Erp5-report mailing list