[Erp5-report] r34063 kazuhiko - /erp5/trunk/products/ERP5/tests/testTradeModelLine.py
nobody at svn.erp5.org
nobody at svn.erp5.org
Wed Mar 24 17:06:49 CET 2010
Author: kazuhiko
Date: Wed Mar 24 17:06:42 2010
New Revision: 34063
URL: http://svn.erp5.org?rev=34063&view=rev
Log:
use new simulation and now test_TradeModelRuleSimulationBuildInvoiceInvoiceLineModifyDivergencyAndSolving can pass with the Trade Model Solver.
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=34063&r1=34062&r2=34063&view=diff
==============================================================================
--- erp5/trunk/products/ERP5/tests/testTradeModelLine.py [utf8] (original)
+++ erp5/trunk/products/ERP5/tests/testTradeModelLine.py [utf8] Wed Mar 24 17:06:42 2010
@@ -30,14 +30,13 @@
import unittest
import transaction
-from Products.ERP5.tests.testBPMCore import TestBPMMixin
+from Products.ERP5.tests.testERP5SimulationBPMCore import TestBPMMixin
from Products.ERP5Type.tests.Sequence import SequenceList
from DateTime import DateTime
from Products.CMFCore.utils import getToolByName
from Products.ERP5.PropertySheet.TradeModelLine import (TARGET_LEVEL_MOVEMENT,
TARGET_LEVEL_DELIVERY)
from Products.ERP5Type.tests.utils import createZODBPythonScript
-from Products.ERP5Type.tests.backportUnittest import expectedFailure
class TestTradeModelLineMixin(TestBPMMixin):
"""Provides methods to implementations sharing similar logic to Trade Model Lines"""
@@ -78,8 +77,6 @@
modified_order_line_price_ratio = 2.0
modified_invoice_line_quantity_ratio = modified_order_line_quantity_ratio \
= 2.5
-
- modified_packing_list_line_quantity_ratio = 0.5
COMMON_DOCUMENTS_CREATION_SEQUENCE_STRING = """
CreateServiceTax
@@ -133,6 +130,11 @@
Tic
""" + AGGREGATED_AMOUNT_LIST_CHECK_SEQUENCE_STRING
+ # reset some values
+ def afterSetUp(self):
+ TestTradeModelLineMixin.afterSetUp(self)
+ self.modified_packing_list_line_quantity_ratio = 0.5
+
# Helper methods
def _solveDivergence(self, obj, property, decision, group='line'):
kw = {'%s_group_listbox' % group:{}}
@@ -241,7 +243,15 @@
def stepAcceptDecisionQuantityInvoice(self, sequence=None, **kw):
invoice = sequence.get('invoice')
- self._solveDivergence(invoice, 'quantity', 'accept')
+ solver_tool = self.portal.portal_solvers
+ solver_process = solver_tool.newSolverProcess(invoice)
+ for quantity_solver_decision in filter(
+ lambda x:x.getCausalityValue().getTestedProperty()=='quantity',
+ solver_process.contentValues()):
+ # use Trade Model Solver.
+ quantity_solver_decision.setSolverValue(self.portal.portal_types['Trade Model Solver'])
+ solver_process.buildTargetSolverList()
+ solver_process.solve()
def stepAdoptPrevisionQuantityInvoice(self, sequence=None, **kw):
invoice = sequence.get('invoice')
@@ -2069,8 +2079,6 @@
sequence_list.addSequenceString(sequence_string)
sequence_list.play(self, quiet=quiet)
- # This test does not work without implementing an appropriate Trade Model Solver.
- @expectedFailure
def test_TradeModelRuleSimulationBuildInvoiceInvoiceLineModifyDivergencyAndSolving(self, quiet=quiet):
"""Check that after changing invoice line invoice is properly diverged and it is possible to solve"""
sequence_list = SequenceList()
More information about the Erp5-report
mailing list