[Erp5-report] r13698 - /erp5/trunk/products/ERP5/tests/testAccountingReports.py

nobody at svn.erp5.org nobody at svn.erp5.org
Tue Mar 27 11:43:55 CEST 2007


Author: jerome
Date: Tue Mar 27 11:43:53 2007
New Revision: 13698

URL: http://svn.erp5.org?rev=13698&view=rev
Log:
Add a test for trial balance and transactions using different currencies.


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

Modified: erp5/trunk/products/ERP5/tests/testAccountingReports.py
URL: http://svn.erp5.org/erp5/trunk/products/ERP5/tests/testAccountingReports.py?rev=13698&r1=13697&r2=13698&view=diff
==============================================================================
--- erp5/trunk/products/ERP5/tests/testAccountingReports.py (original)
+++ erp5/trunk/products/ERP5/tests/testAccountingReports.py Tue Mar 27 11:43:53 2007
@@ -1012,6 +1012,75 @@
         credit=2150, final_debit_balance=2750, final_credit_balance=2750,
         final_balance_if_debit=None, final_balance_if_credit=None)
 
+  def testTrialBalanceDifferentCurrencies(self):
+    # Test of trial balance and different currencies
+    account_module = self.portal.account_module
+    
+    self._makeOne(
+              portal_type='Accounting Transaction',
+              title='Transaction in EUR (our currency)',
+              resource_value='currency_module/euro',
+              source_reference='1',
+              simulation_state='delivered',
+              destination_section_value=self.organisation_module.client_1,
+              start_date=DateTime(2006, 2, 2),
+              lines=(dict(source_value=account_module.payable,
+                          source_debit=200.0),
+                     dict(source_value=account_module.receivable,
+                          source_credit=200.0),))
+  
+    self._makeOne(
+              portal_type='Accounting Transaction',
+              title='Transaction in USD',
+              resource='currency_module/usd',
+              source_reference='2',
+              simulation_state='delivered',
+              destination_section_value=self.organisation_module.client_1,
+              start_date=DateTime(2006, 2, 2),
+              lines=(dict(source_value=account_module.payable,
+                          source_debit=600.0,
+                          source_asset_debit=300.0,
+                          destination_asset_credit=400.0),
+                     dict(source_value=account_module.receivable,
+                          source_credit=600.0,
+                          source_asset_credit=300.0,
+                          destination_asset_debit=400.0),))
+    
+    # set request variables and render
+    request_form = self.portal.REQUEST.form
+    request_form['from_date'] = DateTime(2006, 1, 1)
+    request_form['at_date'] = DateTime(2006, 2, 2)
+    request_form['section_category'] = 'group/demo_group'
+    request_form['simulation_state'] = ['delivered']
+    request_form['show_empty_accounts'] = 0
+    request_form['expand_accounts'] = 0
+
+    report_section_list = self.getReportSectionList(
+                                    'AccountModule_viewTrialBalanceReport')
+    self.assertEquals(1, len(report_section_list))
+    line_list = self.getListBoxLineList(report_section_list[0])
+    data_line_list = [l for l in line_list if l.isDataLine()]
+ 
+    self.assertEquals(2, len(data_line_list))
+
+    self.checkLineProperties(data_line_list[0], node_id='40',
+        node_title='Payable', initial_debit_balance=0,
+        initial_credit_balance=0, debit=500, credit=0,
+        final_debit_balance=500, final_credit_balance=0,
+        final_balance_if_debit=500, final_balance_if_credit=0)
+    
+    self.checkLineProperties(data_line_list[1], node_id='41',
+        node_title='Receivable', initial_debit_balance=0,
+        initial_credit_balance=0, debit=0, credit=500,
+        final_debit_balance=0, final_credit_balance=500,
+        final_balance_if_debit=0, final_balance_if_credit=500)
+    
+    self.failUnless(line_list[-1].isStatLine())
+    self.checkLineProperties(line_list[-1], node_id=None, node_title=None,
+        initial_debit_balance=0, initial_credit_balance=0, debit=500,
+        credit=500, final_debit_balance=500, final_credit_balance=500,
+        final_balance_if_debit=None, final_balance_if_credit=None)
+  
     
 def test_suite():
   suite = unittest.TestSuite()




More information about the Erp5-report mailing list