diff --git a/product/ERP5/tests/testOrder.py b/product/ERP5/tests/testOrder.py
index 57a55faa692ac723acf25879f3296a41a43d33a7..af128a7472b06beadcbcf2a6bd64f19bcd40bb0b 100755
--- a/product/ERP5/tests/testOrder.py
+++ b/product/ERP5/tests/testOrder.py
@@ -72,6 +72,7 @@ class TestOrder(ERP5TypeTestCase):
   packing_list_portal_type = 'Sale Packing List'
   packing_list_line_portal_type = 'Sale Packing List Line'
   packing_list_cell_portal_type = 'Delivery Cell'
+  delivery_builder_id = 'sale_packing_list_builder'
 
   def getBusinessTemplateList(self):
     """
@@ -1356,6 +1357,43 @@ class TestOrder(ERP5TypeTestCase):
 #     if not run: return
 #     self.failUnless(1==2)
 
+  def stepCheckDeliveryBuilderPresence(self, sequence=None,
+                                       sequence_list=None, **kw):
+    """
+      Test if delivery builder exists
+    """
+    delivery_builder = getattr(self.getPortal().portal_deliveries,
+                               self.delivery_builder_id)
+    self.assertEquals('Delivery Builder', delivery_builder.getPortalType())
+
+  def stepCreateOrganisation1(self,sequence=None, sequence_list=None, **kw):
+    """
+      Create a empty organisation
+    """
+    self.stepCreateOrganisation(sequence=sequence, sequence_list=sequence_list,
+                                **kw)
+    organisation = sequence.get('organisation')
+    sequence.edit(organisation1=organisation)
+
+  def stepCreateOrganisation2(self,sequence=None, sequence_list=None, **kw):
+    """
+      Create a empty organisation
+    """
+    self.stepCreateOrganisation(sequence=sequence, sequence_list=sequence_list,
+                                **kw)
+    organisation = sequence.get('organisation')
+    sequence.edit(organisation2=organisation)
+
+  def stepSetOrderProfile(self,sequence=None, sequence_list=None, **kw):
+    """
+      Set different source and destination on the order
+    """
+    organisation1 = sequence.get('organisation1')
+    organisation2 = sequence.get('organisation2')
+    order = sequence.get('order')
+    order.setSourceValue(organisation1)
+    order.setDestinationValue(organisation2)
+
   def stepCheckDeliveryBuilding(self, sequence=None, sequence_list=None, **kw):
     """
       Test if packing list is well created.
@@ -1393,10 +1431,11 @@ class TestOrder(ERP5TypeTestCase):
       # Then, test if each packing list movement is equals to the sum of somes
       # Simulation Movement
       packing_list_movement_list = []
-      for packing_list_line in packing_list.objectValues(
-                                   portal_type=packing_list_line_portal_type):
-        cell_list = packing_list_line.objectValues(
-                                   portal_type=packing_list_cell_portal_type)
+      for packing_list_line in packing_list.searchFolder(
+                               portal_type=self.packing_list_line_portal_type):
+        packing_list_line = packing_list_line.getObject()
+        cell_list = [x.getObject() for x in packing_list_line.searchFolder(
+                               portal_type=self.packing_list_cell_portal_type)]
         if len(cell_list) == 0:
           packing_list_movement_list.append(packing_list_line)
         else:
@@ -1409,8 +1448,8 @@ class TestOrder(ERP5TypeTestCase):
         for related_simulation_movement in related_simulation_movement_list:
           quantity += related_simulation_movement.getQuantity()
           # Test price
-          self.assertEquals(order_movement.getPrice(), \
-                            simulation_movement.getPrice())
+          self.assertEquals(packing_list_movement.getPrice(), \
+                            related_simulation_movement.getPrice())
           # Test resource
           self.assertEquals(packing_list_movement.getResource(), \
                             related_simulation_movement.getResource())
@@ -1434,10 +1473,18 @@ class TestOrder(ERP5TypeTestCase):
     """
     if not run: return
     sequence_list = SequenceList()
+    # First, test if delivery buider exists
+    sequence_string = '\
+                      CheckDeliveryBuilderPresence \
+                      '
+    sequence_list.addSequenceString(sequence_string)
+
     # Test with a simply order without cell
     sequence_string = '\
-                      CreateOrganisation \
+                      CreateOrganisation1 \
+                      CreateOrganisation2 \
                       CreateOrder \
+                      SetOrderProfile \
                       CreateNotVariatedResource \
                       Tic \
                       CreateOrderLine \
@@ -1454,8 +1501,10 @@ class TestOrder(ERP5TypeTestCase):
 
     # Test to confirm order with variated resource
     sequence_string = '\
-                      CreateOrganisation \
+                      CreateOrganisation1 \
+                      CreateOrganisation2 \
                       CreateOrder \
+                      SetOrderProfile \
                       CreateVariatedResource \
                       Tic \
                       CreateOrderLine \
@@ -1475,8 +1524,10 @@ class TestOrder(ERP5TypeTestCase):
 
     # Test to confirm order with multiples lines
     sequence_string = '\
-                      CreateOrganisation \
+                      CreateOrganisation1 \
+                      CreateOrganisation2 \
                       CreateOrder \
+                      SetOrderProfile \
                       CreateVariatedResource \
                       Tic \
                       CreateOrderLine \
@@ -1499,6 +1550,29 @@ class TestOrder(ERP5TypeTestCase):
                       '
     sequence_list.addSequenceString(sequence_string)
 
+    # Test with a order with 2 lines and the same not variated resource
+    sequence_string = '\
+                      CreateOrganisation1 \
+                      CreateOrganisation2 \
+                      CreateOrder \
+                      SetOrderProfile \
+                      CreateNotVariatedResource \
+                      Tic \
+                      CreateOrderLine \
+                      SetOrderLineResource \
+                      SetOrderLineDefaultValues \
+                      CreateOrderLine \
+                      SetOrderLineResource \
+                      SetOrderLineDefaultValues \
+                      OrderOrder \
+                      Tic \
+                      CheckDeliveryBuilding \
+                      ConfirmOrder \
+                      Tic \
+                      CheckDeliveryBuilding \
+                      '
+    sequence_list.addSequenceString(sequence_string)
+
     sequence_list.play(self)
 
 # XXX