[Erp5-report] r28488 - /erp5/trunk/products/ERP5/tests/testTradeModelLine.py
nobody at svn.erp5.org
nobody at svn.erp5.org
Thu Aug 20 13:36:57 CEST 2009
Author: jerome
Date: Thu Aug 20 13:36:55 2009
New Revision: 28488
URL: http://svn.erp5.org?rev=28488&view=rev
Log:
test that accounting lines are built after trade model line.
This currently does not work because trade model line are accounted twice.
Modified:
erp5/trunk/products/ERP5/tests/testTradeModelLine.py
Modified: erp5/trunk/products/ERP5/tests/testTradeModelLine.py
URL: http://svn.erp5.org/erp5/trunk/products/ERP5/tests/testTradeModelLine.py?rev=28488&r1=28487&r2=28488&view=diff
==============================================================================
--- erp5/trunk/products/ERP5/tests/testTradeModelLine.py [utf8] (original)
+++ erp5/trunk/products/ERP5/tests/testTradeModelLine.py [utf8] Thu Aug 20 13:36:55 2009
@@ -2197,7 +2197,7 @@
sequence_list.addSequenceString(sequence_string)
sequence_list.play(self)
- def test_BuildTradeModelLineFromOrder(self):
+ def test_BuildTradeModelLineAndAccountingFromOrder(self):
business_process = self.createBusinessProcess()
business_path = self.createBusinessPath(business_process,
trade_phase='default/tax')
@@ -2261,8 +2261,43 @@
self.assertNotEquals(invoice, None)
self.assertEquals(2, len(invoice.getMovementList()))
self.assertEquals(1150, invoice.getTotalPrice())
+ self.assertEquals([], invoice.getDivergenceList())
- def test_BuildTradeModelLineFromInvoice(self):
+ invoice.start()
+ transaction.commit()
+ self.tic()
+
+ self.assertEquals([], invoice.getDivergenceList())
+ accounting_line_list = invoice.getMovementList(
+ portal_type=self.invoice_transaction_line_portal_type)
+ self.assertEquals(3, len(accounting_line_list))
+
+ receivable_movement_list = [m for m in accounting_line_list if
+ m.getSourceValue() == self.receivable_account]
+ self.assertEquals(1, len(receivable_movement_list))
+ receivable_movement = receivable_movement_list[0]
+ self.assertEquals(receivable_movement.getDestinationValue(),
+ self.payable_account)
+ self.assertEquals(1150, receivable_movement.getSourceDebit())
+
+ collected_movement_list = [m for m in accounting_line_list if
+ m.getSourceValue() == self.collected_tax_account]
+ self.assertEquals(1, len(collected_movement_list))
+ collected_movement = collected_movement_list[0]
+ self.assertEquals(collected_movement.getDestinationValue(),
+ self.refundable_tax_account)
+ self.assertEquals(150, collected_movement.getSourceCredit())
+
+ income_movement_list = [m for m in accounting_line_list if
+ m.getSourceValue() == self.income_account]
+ self.assertEquals(1, len(income_movement_list))
+ income_movement = income_movement_list[0]
+ self.assertEquals(income_movement.getDestinationValue(),
+ self.expense_account)
+ self.assertEquals(1000, income_movement.getSourceCredit())
+
+
+ def test_BuildTradeModelLineAndAccountingFromInvoice(self):
business_process = self.createBusinessProcess()
business_path = self.createBusinessPath(business_process,
trade_phase='default/tax')
@@ -2313,11 +2348,48 @@
self.assertEquals(2, len(invoice.getMovementList()))
self.assertEquals(1150, invoice.getTotalPrice())
+ self.assertEquals([], invoice.getDivergenceList())
+
+ invoice.start()
+ transaction.commit()
+ self.tic()
+
+ self.assertEquals([], invoice.getDivergenceList())
+ accounting_line_list = invoice.getMovementList(
+ portal_type=self.invoice_transaction_line_portal_type)
+ self.assertEquals(3, len(accounting_line_list))
+
+ receivable_movement_list = [m for m in accounting_line_list if
+ m.getSourceValue() == self.receivable_account]
+ self.assertEquals(1, len(receivable_movement_list))
+ receivable_movement = receivable_movement_list[0]
+ self.assertEquals(receivable_movement.getDestinationValue(),
+ self.payable_account)
+ self.assertEquals(1150, receivable_movement.getSourceDebit())
+
+ collected_movement_list = [m for m in accounting_line_list if
+ m.getSourceValue() == self.collected_tax_account]
+ self.assertEquals(1, len(collected_movement_list))
+ collected_movement = collected_movement_list[0]
+ self.assertEquals(collected_movement.getDestinationValue(),
+ self.refundable_tax_account)
+ self.assertEquals(150, collected_movement.getSourceCredit())
+
+ income_movement_list = [m for m in accounting_line_list if
+ m.getSourceValue() == self.income_account]
+ self.assertEquals(1, len(income_movement_list))
+ income_movement = income_movement_list[0]
+ self.assertEquals(income_movement.getDestinationValue(),
+ self.expense_account)
+ self.assertEquals(1000, income_movement.getSourceCredit())
+
+
class TestTradeModelLineSale(TestTradeModelLine):
invoice_portal_type = 'Sale Invoice Transaction'
invoice_line_portal_type = 'Invoice Line'
+ invoice_transaction_line_portal_type = 'Sale Invoice Transaction Line'
order_portal_type = 'Sale Order'
order_line_portal_type = 'Sale Order Line'
packing_list_portal_type = 'Sale Packing List'
@@ -2328,6 +2400,7 @@
class TestTradeModelLinePurchase(TestTradeModelLine):
invoice_portal_type = 'Purchase Invoice Transaction'
invoice_line_portal_type = 'Invoice Line'
+ invoice_transaction_line_portal_type = 'Purchase Invoice Transaction Line'
order_portal_type = 'Purchase Order'
order_line_portal_type = 'Purchase Order Line'
packing_list_portal_type = 'Purchase Packing List'
More information about the Erp5-report
mailing list