diff --git a/bt5/erp5_configurator_standard_invoicing_template/PathTemplateItem/portal_deliveries/purchase_invoice_transaction_builder/category_movement_group_on_delivery.xml b/bt5/erp5_configurator_standard_invoicing_template/PathTemplateItem/portal_deliveries/purchase_invoice_transaction_builder/category_movement_group_on_delivery.xml deleted file mode 100644 index ecdbb5f304075b0527e62bbf712c8b9edf39d890..0000000000000000000000000000000000000000 --- a/bt5/erp5_configurator_standard_invoicing_template/PathTemplateItem/portal_deliveries/purchase_invoice_transaction_builder/category_movement_group_on_delivery.xml +++ /dev/null @@ -1,54 +0,0 @@ -<?xml version="1.0"?> -<ZopeData> - <record id="1" aka="AAAAAAAAAAE="> - <pickle> - <global name="Category Movement Group" module="erp5.portal_type"/> - </pickle> - <pickle> - <dictionary> - <item> - <key> <string>categories</string> </key> - <value> - <tuple> - <string>divergence_scope/category</string> - <string>collect_order_group/delivery</string> - </tuple> - </value> - </item> - <item> - <key> <string>description</string> </key> - <value> - <none/> - </value> - </item> - <item> - <key> <string>id</string> </key> - <value> <string>category_movement_group_on_delivery</string> </value> - </item> - <item> - <key> <string>int_index</string> </key> - <value> <int>3</int> </value> - </item> - <item> - <key> <string>portal_type</string> </key> - <value> <string>Category Movement Group</string> </value> - </item> - <item> - <key> <string>tested_property</string> </key> - <value> - <tuple> - <string>source_section</string> - <string>destination_section</string> - <string>source_payment</string> - <string>destination_payment</string> - </tuple> - </value> - </item> - <item> - <key> <string>title</string> </key> - <value> <string>category_movement_group_on_delivery</string> </value> - </item> - </dictionary> - </pickle> - </record> -</ZopeData> diff --git a/bt5/erp5_configurator_standard_invoicing_template/PathTemplateItem/portal_deliveries/sale_invoice_transaction_trade_model_builder/causality_movement_group_on_delivery.xml b/bt5/erp5_configurator_standard_invoicing_template/PathTemplateItem/portal_deliveries/purchase_invoice_transaction_builder/parent_explanation_movement_group_on_delivery.xml similarity index 69% rename from bt5/erp5_configurator_standard_invoicing_template/PathTemplateItem/portal_deliveries/sale_invoice_transaction_trade_model_builder/causality_movement_group_on_delivery.xml rename to bt5/erp5_configurator_standard_invoicing_template/PathTemplateItem/portal_deliveries/purchase_invoice_transaction_builder/parent_explanation_movement_group_on_delivery.xml index c21b216321908a7119acf376d9d74aa5bca3b043..23a5eb469190472ea316bffadc31581973a3e432 100644 --- a/bt5/erp5_configurator_standard_invoicing_template/PathTemplateItem/portal_deliveries/sale_invoice_transaction_trade_model_builder/causality_movement_group_on_delivery.xml +++ b/bt5/erp5_configurator_standard_invoicing_template/PathTemplateItem/portal_deliveries/purchase_invoice_transaction_builder/parent_explanation_movement_group_on_delivery.xml @@ -2,7 +2,7 @@ <ZopeData> <record id="1" aka="AAAAAAAAAAE="> <pickle> - <global name="Causality Movement Group" module="erp5.portal_type"/> + <global name="Parent Explanation Movement Group" module="erp5.portal_type"/> </pickle> <pickle> <dictionary> @@ -22,19 +22,19 @@ </item> <item> <key> <string>id</string> </key> - <value> <string>causality_movement_group_on_delivery</string> </value> + <value> <string>parent_explanation_movement_group_on_delivery</string> </value> </item> <item> <key> <string>int_index</string> </key> - <value> <int>3</int> </value> + <value> <int>1</int> </value> </item> <item> <key> <string>portal_type</string> </key> - <value> <string>Causality Movement Group</string> </value> + <value> <string>Parent Explanation Movement Group</string> </value> </item> <item> <key> <string>title</string> </key> - <value> <string>causality_movement_group_on_delivery</string> </value> + <value> <string>parent_explanation_movement_group_on_delivery</string> </value> </item> </dictionary> </pickle> diff --git a/bt5/erp5_configurator_standard_invoicing_template/PathTemplateItem/portal_deliveries/purchase_invoice_transaction_builder/property_movement_group_on_delivery.xml b/bt5/erp5_configurator_standard_invoicing_template/PathTemplateItem/portal_deliveries/purchase_invoice_transaction_builder/property_movement_group_on_delivery.xml deleted file mode 100644 index 6436fb8009629d30dc9893cdcc1b0c9221156277..0000000000000000000000000000000000000000 --- a/bt5/erp5_configurator_standard_invoicing_template/PathTemplateItem/portal_deliveries/purchase_invoice_transaction_builder/property_movement_group_on_delivery.xml +++ /dev/null @@ -1,52 +0,0 @@ -<?xml version="1.0"?> -<ZopeData> - <record id="1" aka="AAAAAAAAAAE="> - <pickle> - <global name="Property Movement Group" module="erp5.portal_type"/> - </pickle> - <pickle> - <dictionary> - <item> - <key> <string>categories</string> </key> - <value> - <tuple> - <string>divergence_scope/property</string> - <string>collect_order_group/delivery</string> - </tuple> - </value> - </item> - <item> - <key> <string>description</string> </key> - <value> - <none/> - </value> - </item> - <item> - <key> <string>id</string> </key> - <value> <string>property_movement_group_on_delivery</string> </value> - </item> - <item> - <key> <string>int_index</string> </key> - <value> <int>2</int> </value> - </item> - <item> - <key> <string>portal_type</string> </key> - <value> <string>Property Movement Group</string> </value> - </item> - <item> - <key> <string>tested_property</string> </key> - <value> - <tuple> - <string>start_date</string> - <string>stop_date</string> - </tuple> - </value> - </item> - <item> - <key> <string>title</string> </key> - <value> <string>property_movement_group_on_delivery</string> </value> - </item> - </dictionary> - </pickle> - </record> -</ZopeData> diff --git a/bt5/erp5_configurator_standard_invoicing_template/PathTemplateItem/portal_deliveries/purchase_invoice_transaction_trade_model_builder/category_movement_group_on_delivery.xml b/bt5/erp5_configurator_standard_invoicing_template/PathTemplateItem/portal_deliveries/purchase_invoice_transaction_trade_model_builder/category_movement_group_on_delivery.xml deleted file mode 100644 index 14de6c3077a4039e4a7989928f52a1ae213deb71..0000000000000000000000000000000000000000 --- a/bt5/erp5_configurator_standard_invoicing_template/PathTemplateItem/portal_deliveries/purchase_invoice_transaction_trade_model_builder/category_movement_group_on_delivery.xml +++ /dev/null @@ -1,65 +0,0 @@ -<?xml version="1.0"?> -<ZopeData> - <record id="1" aka="AAAAAAAAAAE="> - <pickle> - <global name="Category Movement Group" module="erp5.portal_type"/> - </pickle> - <pickle> - <dictionary> - <item> - <key> <string>categories</string> </key> - <value> - <tuple> - <string>divergence_scope/category</string> - <string>collect_order_group/delivery</string> - </tuple> - </value> - </item> - <item> - <key> <string>description</string> </key> - <value> - <none/> - </value> - </item> - <item> - <key> <string>id</string> </key> - <value> <string>category_movement_group_on_delivery</string> </value> - </item> - <item> - <key> <string>int_index</string> </key> - <value> <int>2</int> </value> - </item> - <item> - <key> <string>portal_type</string> </key> - <value> <string>Category Movement Group</string> </value> - </item> - <item> - <key> <string>tested_property</string> </key> - <value> - <tuple> - <string>delivery_mode</string> - <string>incoterm</string> - <string>source</string> - <string>destination</string> - <string>source_section</string> - <string>destination_section</string> - <string>source_decision</string> - <string>destination_decision</string> - <string>source_administration</string> - <string>destination_administration</string> - <string>source_project</string> - <string>destination_project</string> - <string>source_payment</string> - <string>destination_payment</string> - <string>price_currency</string> - </tuple> - </value> - </item> - <item> - <key> <string>title</string> </key> - <value> <string>category_movement_group_on_delivery</string> </value> - </item> - </dictionary> - </pickle> - </record> -</ZopeData> diff --git a/bt5/erp5_configurator_standard_invoicing_template/PathTemplateItem/portal_deliveries/purchase_invoice_transaction_trade_model_builder/causality_movement_group_on_delivery.xml b/bt5/erp5_configurator_standard_invoicing_template/PathTemplateItem/portal_deliveries/purchase_invoice_transaction_trade_model_builder/parent_explanation_movement_group_on_delivery.xml similarity index 69% rename from bt5/erp5_configurator_standard_invoicing_template/PathTemplateItem/portal_deliveries/purchase_invoice_transaction_trade_model_builder/causality_movement_group_on_delivery.xml rename to bt5/erp5_configurator_standard_invoicing_template/PathTemplateItem/portal_deliveries/purchase_invoice_transaction_trade_model_builder/parent_explanation_movement_group_on_delivery.xml index c21b216321908a7119acf376d9d74aa5bca3b043..23a5eb469190472ea316bffadc31581973a3e432 100644 --- a/bt5/erp5_configurator_standard_invoicing_template/PathTemplateItem/portal_deliveries/purchase_invoice_transaction_trade_model_builder/causality_movement_group_on_delivery.xml +++ b/bt5/erp5_configurator_standard_invoicing_template/PathTemplateItem/portal_deliveries/purchase_invoice_transaction_trade_model_builder/parent_explanation_movement_group_on_delivery.xml @@ -2,7 +2,7 @@ <ZopeData> <record id="1" aka="AAAAAAAAAAE="> <pickle> - <global name="Causality Movement Group" module="erp5.portal_type"/> + <global name="Parent Explanation Movement Group" module="erp5.portal_type"/> </pickle> <pickle> <dictionary> @@ -22,19 +22,19 @@ </item> <item> <key> <string>id</string> </key> - <value> <string>causality_movement_group_on_delivery</string> </value> + <value> <string>parent_explanation_movement_group_on_delivery</string> </value> </item> <item> <key> <string>int_index</string> </key> - <value> <int>3</int> </value> + <value> <int>1</int> </value> </item> <item> <key> <string>portal_type</string> </key> - <value> <string>Causality Movement Group</string> </value> + <value> <string>Parent Explanation Movement Group</string> </value> </item> <item> <key> <string>title</string> </key> - <value> <string>causality_movement_group_on_delivery</string> </value> + <value> <string>parent_explanation_movement_group_on_delivery</string> </value> </item> </dictionary> </pickle> diff --git a/bt5/erp5_configurator_standard_invoicing_template/PathTemplateItem/portal_deliveries/sale_invoice_transaction_builder/category_movement_group_on_delivery.xml b/bt5/erp5_configurator_standard_invoicing_template/PathTemplateItem/portal_deliveries/sale_invoice_transaction_builder/category_movement_group_on_delivery.xml deleted file mode 100644 index ecdbb5f304075b0527e62bbf712c8b9edf39d890..0000000000000000000000000000000000000000 --- a/bt5/erp5_configurator_standard_invoicing_template/PathTemplateItem/portal_deliveries/sale_invoice_transaction_builder/category_movement_group_on_delivery.xml +++ /dev/null @@ -1,54 +0,0 @@ -<?xml version="1.0"?> -<ZopeData> - <record id="1" aka="AAAAAAAAAAE="> - <pickle> - <global name="Category Movement Group" module="erp5.portal_type"/> - </pickle> - <pickle> - <dictionary> - <item> - <key> <string>categories</string> </key> - <value> - <tuple> - <string>divergence_scope/category</string> - <string>collect_order_group/delivery</string> - </tuple> - </value> - </item> - <item> - <key> <string>description</string> </key> - <value> - <none/> - </value> - </item> - <item> - <key> <string>id</string> </key> - <value> <string>category_movement_group_on_delivery</string> </value> - </item> - <item> - <key> <string>int_index</string> </key> - <value> <int>3</int> </value> - </item> - <item> - <key> <string>portal_type</string> </key> - <value> <string>Category Movement Group</string> </value> - </item> - <item> - <key> <string>tested_property</string> </key> - <value> - <tuple> - <string>source_section</string> - <string>destination_section</string> - <string>source_payment</string> - <string>destination_payment</string> - </tuple> - </value> - </item> - <item> - <key> <string>title</string> </key> - <value> <string>category_movement_group_on_delivery</string> </value> - </item> - </dictionary> - </pickle> - </record> -</ZopeData> diff --git a/bt5/erp5_configurator_standard_invoicing_template/PathTemplateItem/portal_deliveries/sale_invoice_transaction_builder/causality_movement_group_on_delivery.xml b/bt5/erp5_configurator_standard_invoicing_template/PathTemplateItem/portal_deliveries/sale_invoice_transaction_builder/parent_explanation_movement_group_on_delivery.xml similarity index 64% rename from bt5/erp5_configurator_standard_invoicing_template/PathTemplateItem/portal_deliveries/sale_invoice_transaction_builder/causality_movement_group_on_delivery.xml rename to bt5/erp5_configurator_standard_invoicing_template/PathTemplateItem/portal_deliveries/sale_invoice_transaction_builder/parent_explanation_movement_group_on_delivery.xml index 7cfbec56058b52fc0162c5b1b1764fae07156a1c..23a5eb469190472ea316bffadc31581973a3e432 100644 --- a/bt5/erp5_configurator_standard_invoicing_template/PathTemplateItem/portal_deliveries/sale_invoice_transaction_builder/causality_movement_group_on_delivery.xml +++ b/bt5/erp5_configurator_standard_invoicing_template/PathTemplateItem/portal_deliveries/sale_invoice_transaction_builder/parent_explanation_movement_group_on_delivery.xml @@ -2,7 +2,7 @@ <ZopeData> <record id="1" aka="AAAAAAAAAAE="> <pickle> - <global name="First Causality Movement Group" module="erp5.portal_type"/> + <global name="Parent Explanation Movement Group" module="erp5.portal_type"/> </pickle> <pickle> <dictionary> @@ -16,11 +16,13 @@ </item> <item> <key> <string>description</string> </key> - <value> <string>BPM modification - used instead of Causality Movement Group to group orphaned parent movements coming from invoice</string> </value> + <value> + <none/> + </value> </item> <item> <key> <string>id</string> </key> - <value> <string>causality_movement_group_on_delivery</string> </value> + <value> <string>parent_explanation_movement_group_on_delivery</string> </value> </item> <item> <key> <string>int_index</string> </key> @@ -28,11 +30,11 @@ </item> <item> <key> <string>portal_type</string> </key> - <value> <string>First Causality Movement Group</string> </value> + <value> <string>Parent Explanation Movement Group</string> </value> </item> <item> <key> <string>title</string> </key> - <value> <string>First Causality Movement Group</string> </value> + <value> <string>parent_explanation_movement_group_on_delivery</string> </value> </item> </dictionary> </pickle> diff --git a/bt5/erp5_configurator_standard_invoicing_template/PathTemplateItem/portal_deliveries/sale_invoice_transaction_builder/property_movement_group_on_delivery.xml b/bt5/erp5_configurator_standard_invoicing_template/PathTemplateItem/portal_deliveries/sale_invoice_transaction_builder/property_movement_group_on_delivery.xml deleted file mode 100644 index 6436fb8009629d30dc9893cdcc1b0c9221156277..0000000000000000000000000000000000000000 --- a/bt5/erp5_configurator_standard_invoicing_template/PathTemplateItem/portal_deliveries/sale_invoice_transaction_builder/property_movement_group_on_delivery.xml +++ /dev/null @@ -1,52 +0,0 @@ -<?xml version="1.0"?> -<ZopeData> - <record id="1" aka="AAAAAAAAAAE="> - <pickle> - <global name="Property Movement Group" module="erp5.portal_type"/> - </pickle> - <pickle> - <dictionary> - <item> - <key> <string>categories</string> </key> - <value> - <tuple> - <string>divergence_scope/property</string> - <string>collect_order_group/delivery</string> - </tuple> - </value> - </item> - <item> - <key> <string>description</string> </key> - <value> - <none/> - </value> - </item> - <item> - <key> <string>id</string> </key> - <value> <string>property_movement_group_on_delivery</string> </value> - </item> - <item> - <key> <string>int_index</string> </key> - <value> <int>2</int> </value> - </item> - <item> - <key> <string>portal_type</string> </key> - <value> <string>Property Movement Group</string> </value> - </item> - <item> - <key> <string>tested_property</string> </key> - <value> - <tuple> - <string>start_date</string> - <string>stop_date</string> - </tuple> - </value> - </item> - <item> - <key> <string>title</string> </key> - <value> <string>property_movement_group_on_delivery</string> </value> - </item> - </dictionary> - </pickle> - </record> -</ZopeData> diff --git a/bt5/erp5_configurator_standard_invoicing_template/PathTemplateItem/portal_deliveries/sale_invoice_transaction_trade_model_builder/category_movement_group_on_delivery.xml b/bt5/erp5_configurator_standard_invoicing_template/PathTemplateItem/portal_deliveries/sale_invoice_transaction_trade_model_builder/category_movement_group_on_delivery.xml deleted file mode 100644 index 14de6c3077a4039e4a7989928f52a1ae213deb71..0000000000000000000000000000000000000000 --- a/bt5/erp5_configurator_standard_invoicing_template/PathTemplateItem/portal_deliveries/sale_invoice_transaction_trade_model_builder/category_movement_group_on_delivery.xml +++ /dev/null @@ -1,65 +0,0 @@ -<?xml version="1.0"?> -<ZopeData> - <record id="1" aka="AAAAAAAAAAE="> - <pickle> - <global name="Category Movement Group" module="erp5.portal_type"/> - </pickle> - <pickle> - <dictionary> - <item> - <key> <string>categories</string> </key> - <value> - <tuple> - <string>divergence_scope/category</string> - <string>collect_order_group/delivery</string> - </tuple> - </value> - </item> - <item> - <key> <string>description</string> </key> - <value> - <none/> - </value> - </item> - <item> - <key> <string>id</string> </key> - <value> <string>category_movement_group_on_delivery</string> </value> - </item> - <item> - <key> <string>int_index</string> </key> - <value> <int>2</int> </value> - </item> - <item> - <key> <string>portal_type</string> </key> - <value> <string>Category Movement Group</string> </value> - </item> - <item> - <key> <string>tested_property</string> </key> - <value> - <tuple> - <string>delivery_mode</string> - <string>incoterm</string> - <string>source</string> - <string>destination</string> - <string>source_section</string> - <string>destination_section</string> - <string>source_decision</string> - <string>destination_decision</string> - <string>source_administration</string> - <string>destination_administration</string> - <string>source_project</string> - <string>destination_project</string> - <string>source_payment</string> - <string>destination_payment</string> - <string>price_currency</string> - </tuple> - </value> - </item> - <item> - <key> <string>title</string> </key> - <value> <string>category_movement_group_on_delivery</string> </value> - </item> - </dictionary> - </pickle> - </record> -</ZopeData> diff --git a/bt5/erp5_configurator_standard_invoicing_template/PathTemplateItem/portal_deliveries/purchase_invoice_transaction_builder/causality_movement_group_on_delivery.xml b/bt5/erp5_configurator_standard_invoicing_template/PathTemplateItem/portal_deliveries/sale_invoice_transaction_trade_model_builder/parent_explanation_movement_group_on_delivery.xml similarity index 64% rename from bt5/erp5_configurator_standard_invoicing_template/PathTemplateItem/portal_deliveries/purchase_invoice_transaction_builder/causality_movement_group_on_delivery.xml rename to bt5/erp5_configurator_standard_invoicing_template/PathTemplateItem/portal_deliveries/sale_invoice_transaction_trade_model_builder/parent_explanation_movement_group_on_delivery.xml index 7cfbec56058b52fc0162c5b1b1764fae07156a1c..23a5eb469190472ea316bffadc31581973a3e432 100644 --- a/bt5/erp5_configurator_standard_invoicing_template/PathTemplateItem/portal_deliveries/purchase_invoice_transaction_builder/causality_movement_group_on_delivery.xml +++ b/bt5/erp5_configurator_standard_invoicing_template/PathTemplateItem/portal_deliveries/sale_invoice_transaction_trade_model_builder/parent_explanation_movement_group_on_delivery.xml @@ -2,7 +2,7 @@ <ZopeData> <record id="1" aka="AAAAAAAAAAE="> <pickle> - <global name="First Causality Movement Group" module="erp5.portal_type"/> + <global name="Parent Explanation Movement Group" module="erp5.portal_type"/> </pickle> <pickle> <dictionary> @@ -16,11 +16,13 @@ </item> <item> <key> <string>description</string> </key> - <value> <string>BPM modification - used instead of Causality Movement Group to group orphaned parent movements coming from invoice</string> </value> + <value> + <none/> + </value> </item> <item> <key> <string>id</string> </key> - <value> <string>causality_movement_group_on_delivery</string> </value> + <value> <string>parent_explanation_movement_group_on_delivery</string> </value> </item> <item> <key> <string>int_index</string> </key> @@ -28,11 +30,11 @@ </item> <item> <key> <string>portal_type</string> </key> - <value> <string>First Causality Movement Group</string> </value> + <value> <string>Parent Explanation Movement Group</string> </value> </item> <item> <key> <string>title</string> </key> - <value> <string>First Causality Movement Group</string> </value> + <value> <string>parent_explanation_movement_group_on_delivery</string> </value> </item> </dictionary> </pickle> diff --git a/product/ERP5/tests/testInvoice.py b/product/ERP5/tests/testInvoice.py index 4a7565fa9e0955337bfa45ac44fe2799a8009cab..6c09ad993d6ddcab3afd8a9263a9e0e23997deb3 100644 --- a/product/ERP5/tests/testInvoice.py +++ b/product/ERP5/tests/testInvoice.py @@ -753,31 +753,6 @@ class TestInvoiceMixin(TestPackingListMixin): new_invoice.edit(start_date=self.datetime, stop_date=self.datetime+1) - def stepRemoveDateMovementGroupForTransactionBuilder(self, sequence=None, - sequence_list=None, **kw): - """ - Remove DateMovementGroup - """ - portal = self.getPortal() - builder = portal.portal_deliveries.sale_invoice_transaction_builder - delivery_movement_group_list = builder.getDeliveryMovementGroupList() - uf = self.getPortal().acl_users - uf._doAddUser('admin', '', ['Manager'], []) - user = uf.getUserById('admin').__of__(uf) - newSecurityManager(None, user) - for movement_group in delivery_movement_group_list: - if movement_group.getPortalType() == 'Property Movement Group': - # it contains 'start_date' and 'stop_date' only, so we remove - # movement group itself. - builder.deleteContent(movement_group.getId()) - builder.newContent( - portal_type = 'Parent Explanation Movement Group', - collect_order_group='delivery', - int_index=len(delivery_movement_group_list)+1 - ) - user = uf.getUserById('test_invoice_user').__of__(uf) - newSecurityManager(None, user) - def stepEditInvoice(self, sequence=None, sequence_list=None, **kw): """Edit the current invoice, to trigger updateSimulation.""" invoice = sequence.get('invoice') @@ -2698,7 +2673,6 @@ class TestSaleInvoice(TestSaleInvoiceMixin, TestInvoice, ERP5TypeTestCase): stepInvoiceBuilderAlarm stepTic stepCheckTwoInvoices - stepRemoveDateMovementGroupForTransactionBuilder stepStartTwoInvoices stepTic stepInvoiceBuilderAlarm @@ -3600,6 +3574,43 @@ class TestSaleInvoice(TestSaleInvoiceMixin, TestInvoice, ERP5TypeTestCase): self.assertEqual('solved', packing_list.getCausalityState()) self.assertEqual('solved', invoice.getCausalityState()) + def test_19_SimpleInvoiceModifyArrow(self): + """ + Check we can modify arrow on an invoice without having building issues + of transaction lines + """ + sequence_list = SequenceList() + for base_sequence in (self.PACKING_LIST_DEFAULT_SEQUENCE, ) : + sequence_list.addSequenceString( + base_sequence + + """ + stepSetReadyPackingList + stepTic + stepStartPackingList + stepCheckInvoicingRule + stepTic + stepInvoiceBuilderAlarm + stepTic + stepCheckInvoiceBuilding + """) + sequence_list.play(self) + sequence = sequence_list.getSequenceList()[0] + invoice = sequence.get("invoice") + self.assertEqual("confirmed", invoice.getSimulationState()) + self.assertEqual("solved", invoice.getCausalityState()) + self.portal.portal_workflow.doActionFor(invoice, "start_action") + other_client = sequence.get("organisation3") + invoice.setDestinationSectionValue(other_client) + self.tic() + self.assertEqual("diverged", invoice.getCausalityState()) + self.assertEqual(set([("411", -65714.22), + ("44571", 10769.22), + ("70712", 54945.00)]), + set([(x.getSourceValue().getGapId(), + x.getQuantity()) for x in \ + invoice.objectValues( + portal_type="Sale Invoice Transaction Line")])) + class TestPurchaseInvoice(TestInvoice, ERP5TypeTestCase): """Tests for purchase invoice. """