def test_reserve_01_tree_reserve_release(self): sale_order_form = Form(self.env["sale.order"]) sale_order_form.partner_id = self.partner with sale_order_form.order_line.new() as order_line_form: order_line_form.product_id = self.product_1 order_line_form.product_uom_qty = 3 so = sale_order_form.save() wiz = Form( self.env["sale.stock.reserve"].with_context( active_model="sale.order.line", active_ids=so.order_line.ids ) ).save() wiz.button_reserve() self.assertEquals(self.product_1.virtual_available, 7) so.order_line.release_stock_reservation() self.assertEquals(self.product_1.virtual_available, 10)
def test_reserve_05_unlink_order(self): sale_order_form = Form(self.env["sale.order"]) sale_order_form.partner_id = self.partner with sale_order_form.order_line.new() as order_line_form: order_line_form.product_id = self.product_1 order_line_form.product_uom_qty = 3 so = sale_order_form.save() wiz = Form( self.env["sale.stock.reserve"].with_context( active_model="sale.order.line", active_ids=so.order_line.ids ) ).save() wiz.button_reserve() with self.assertRaises(UserError): so.unlink() with self.assertRaises(UserError): so.order_line.unlink()
def test_reserve_03_confirm_order_release(self): sale_order_form = Form(self.env["sale.order"]) sale_order_form.partner_id = self.partner with sale_order_form.order_line.new() as order_line_form: order_line_form.product_id = self.product_1 order_line_form.product_uom_qty = 3 so = sale_order_form.save() wiz = Form( self.env["sale.stock.reserve"].with_context( active_model="sale.order.line", active_ids=so.order_line.ids ) ).save() wiz.button_reserve() self.assertEquals(self.product_1.virtual_available, 7) so.action_confirm() cancelled_reservation = self.env["stock.reservation"].search( [("product_id", "=", self.product_1.id), ("state", "=", "cancel")] ) self.assertEquals(len(cancelled_reservation), 1) self.assertEquals(self.product_1.virtual_available, 7)