diff --git a/addons/stock/models/stock_picking.py b/addons/stock/models/stock_picking.py index 28f8a753977..0028003aa2f 100644 --- a/addons/stock/models/stock_picking.py +++ b/addons/stock/models/stock_picking.py @@ -1029,7 +1029,6 @@ class Picking(models.Model): moves_to_backorder.write({'picking_id': backorder_picking.id}) moves_to_backorder.mapped('package_level_id').write({'picking_id':backorder_picking.id}) moves_to_backorder.mapped('move_line_ids').write({'picking_id': backorder_picking.id}) - backorder_picking.action_assign() backorders |= backorder_picking return backorders diff --git a/addons/stock/tests/test_move2.py b/addons/stock/tests/test_move2.py index 6b7b822e0af..8c98b886625 100644 --- a/addons/stock/tests/test_move2.py +++ b/addons/stock/tests/test_move2.py @@ -117,10 +117,10 @@ class TestPickShip(TestStockCommon): # Now partially transfer the ship picking_client.move_lines[0].move_line_ids[0].qty_done = 5 - picking_client._action_done() # no new in order to create backorder + picking_client._action_done() # no new in order to create backorder backorder = self.env['stock.picking'].search([('backorder_id', '=', picking_client.id)]) - self.assertEqual(backorder.state, 'assigned', 'Backorder should be started') + self.assertEqual(backorder.state, 'waiting', 'Backorder should be waiting for reservation') def test_mto_moves_transfer(self): """ @@ -291,8 +291,8 @@ class TestPickShip(TestStockCommon): # create a backorder picking_pick._action_done() picking_pick_backorder = self.env['stock.picking'].search([('backorder_id', '=', picking_pick.id)]) - self.assertEqual(picking_pick_backorder.state, 'assigned') - self.assertEqual(picking_pick_backorder.move_line_ids.product_qty, 5.0) + self.assertEqual(picking_pick_backorder.state, 'confirmed') + self.assertEqual(picking_pick_backorder.move_lines.product_qty, 5.0) self.assertEqual(picking_client.state, 'assigned') @@ -771,10 +771,13 @@ class TestSinglePicking(TestStockCommon): delivery_order.move_lines[0].move_line_ids[0].qty_done = 1 delivery_order._action_done() self.assertNotEqual(delivery_order.date_done, False) - self.assertEqual(self.env['stock.quant']._get_available_quantity(self.productA, pack_location), 0.0) + self.assertEqual(self.env['stock.quant']._get_available_quantity(self.productA, pack_location), 1.0) backorder = self.env['stock.picking'].search([('backorder_id', '=', delivery_order.id)]) + self.assertEqual(backorder.state, 'confirmed') + backorder.action_assign() self.assertEqual(backorder.state, 'assigned') + self.assertEqual(self.env['stock.quant']._get_available_quantity(self.productA, pack_location), 0.0) def test_backorder_2(self): """ Check the good behavior of creating a backorder for a partially available stock move.