import odoo.tests.common as common from odoo import exceptions class TestPosCustomerRequired(common.TransactionCase): def setUp(self): super().setUp() self.pos_config = self.env.ref("point_of_sale.pos_config_main").copy() def test_customer_not_required(self): self.pos_config.require_customer = "no" # Now Create new session and create a # pos order in this session pos_session = self.env["pos.session"].create( {"user_id": 1, "config_id": self.pos_config.id} ) # should not raise any exception self.env["pos.order"].create( { "session_id": pos_session.id, "partner_id": False, "amount_tax": 0.0, "amount_total": 0.0, "amount_paid": 0.0, "amount_return": 0.0, } ) def test_customer_is_required(self): self.pos_config.require_customer = "order" # Now Create new session and create a # pos order in this session pos_session = self.env["pos.session"].create( {"user_id": 1, "config_id": self.pos_config.id} ) # should raise exceptions.ValidationError with self.assertRaises(exceptions.ValidationError): self.env["pos.order"].create( { "session_id": pos_session.id, "partner_id": False, "amount_tax": 0.0, "amount_total": 0.0, "amount_paid": 0.0, "amount_return": 0.0, } )