11from odoo import tools
22from odoo .tests import Form , common , tagged
3+ from odoo .exceptions import ValidationError
34
45
56@tagged ("post_install" , "-at_install" )
@@ -40,7 +41,7 @@ def test_15_liquido_producto_sales_patch(self):
4041 invoice_form .journal_id = self .journal
4142 invoice_form .l10n_latam_document_type_id = doc_27_lu_a
4243 invoice = invoice_form .save ()
43- invoice . action_post () # Agregamos esta linea para que se dispare la validacion al momento de validar la factura y no antes
44+
4445
4546 # Adding the document number will let us to save and validate the number without any problems
4647 with Form (self .env ["account.move" ].with_context (default_move_type = "out_invoice" )) as invoice_form :
@@ -69,17 +70,23 @@ def test_16_liquido_producto_purchase_patch(self):
6970 doc_60_lp_a = self .env .ref ("l10n_ar.dc_a_cvl" )
7071 payment_term_id = self .env .ref ("account.account_payment_term_end_following_month" )
7172
72- with self .assertRaisesRegex (AssertionError , "l10n_latam_document_number is a required field" ):
73- with Form (self .env ["account.move" ].with_context (default_move_type = "in_invoice" )) as bill_form :
74- bill_form .ref = "demo_liquido_producto_1: Vendor bill liquido producto (DOC 186)"
75- bill_form .partner_id = self .res_partner_adhoc
76- bill_form .invoice_payment_term_id = payment_term_id
77- bill_form .invoice_date = "2023-02-09"
78- bill_form .l10n_latam_document_type_id = doc_60_lp_a
79- bill = bill_form .save ()
80- bill .action_post () # Agregamos esta linea para que se dispare la validacion al momento de validar la factura y no antes
73+ with Form (self .env ["account.move" ].with_context (default_move_type = "in_invoice" )) as bill_form :
74+ bill_form .ref = "demo_liquido_producto_1: Vendor bill liquido producto (DOC 186)"
75+ bill_form .partner_id = self .res_partner_adhoc
76+ bill_form .invoice_payment_term_id = payment_term_id
77+ bill_form .invoice_date = "2023-02-09"
78+ bill_form .l10n_latam_document_type_id = doc_60_lp_a
79+ with bill_form .invoice_line_ids .new () as line_form :
80+ line_form .product_id = self .env .ref ("product.product_product_4" )
81+ line_form .quantity = 1
82+ line_form .price_unit = 100
83+ bill = bill_form .save () # Agregamos esta linea para que se dispare la validacion al momento de validar la factura y no antes
84+
85+ self .assertEqual (bill .journal_id , purchase_not_pos_journal )
8186
82- self .assertEqual (bill .journal_id , purchase_not_pos_journal )
87+ # Should fail when posting without document number
88+ with self .assertRaisesRegex (ValidationError , "Please set the document number" ):
89+ bill .action_post ()
8390
8491 # Create a new journal that is an ARCA POS
8592 purchase_pos_journal = self ._create_journal ("preprinted" , data = {"type" : "purchase" , "l10n_ar_is_pos" : True })
@@ -92,6 +99,10 @@ def test_16_liquido_producto_purchase_patch(self):
9299 bill_form .journal_id = purchase_pos_journal
93100 bill_form .l10n_latam_document_type_id = doc_60_lp_a
94101 bill_form .l10n_latam_document_number = "00077-00000077"
102+ with bill_form .invoice_line_ids .new () as line_form :
103+ line_form .product_id = self .env .ref ("product.product_product_4" )
104+ line_form .quantity = 1
105+ line_form .price_unit = 100
95106 bill = bill_form .save ()
96107 bill .action_post ()
97108
0 commit comments