From b4a49170b91769314460cbb36f01cc3d7aa1f80a Mon Sep 17 00:00:00 2001 From: Marcel Savegnago Date: Mon, 25 Nov 2024 18:24:55 -0300 Subject: [PATCH] [IMP] l10n_br_mdfe: add make pdf tests --- l10n_br_mdfe/tests/__init__.py | 1 + l10n_br_mdfe/tests/test_mdfe_damdfe.py | 39 ++++++++++++++++++++++++++ 2 files changed, 40 insertions(+) create mode 100644 l10n_br_mdfe/tests/test_mdfe_damdfe.py diff --git a/l10n_br_mdfe/tests/__init__.py b/l10n_br_mdfe/tests/__init__.py index bfd6ae80ae57..8e2700191841 100644 --- a/l10n_br_mdfe/tests/__init__.py +++ b/l10n_br_mdfe/tests/__init__.py @@ -4,3 +4,4 @@ from . import test_mdfe_import from . import test_mdfe_structure from . import test_mdfe_res_partner +from . import test_mdfe_damdfe diff --git a/l10n_br_mdfe/tests/test_mdfe_damdfe.py b/l10n_br_mdfe/tests/test_mdfe_damdfe.py new file mode 100644 index 000000000000..180a87071780 --- /dev/null +++ b/l10n_br_mdfe/tests/test_mdfe_damdfe.py @@ -0,0 +1,39 @@ +# Copyright 2024 - TODAY, Marcel Savegnago +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from odoo.exceptions import UserError +from odoo.tests.common import TransactionCase + + +class TestDamdfeGeneration(TransactionCase): + def setUp(self): + super().setUp() + + def test_generate_damdfe_brazil_fiscal_report(self): + mdfe = self.env.ref("l10n_br_mdfe.demo_mdfe_lc_modal_rodoviario") + mdfe.action_document_confirm() + mdfe.view_pdf() + + self.assertTrue(mdfe.file_report_id) + + def test_generate_damdfe_document_type_error(self): + damdfe_report = self.env["ir.actions.report"].search( + [("report_name", "=", "main_template_damdfe")] + ) + mdfe = self.env.ref("l10n_br_mdfe.demo_mdfe_lc_modal_rodoviario") + mdfe.document_type_id = self.env.ref("l10n_br_fiscal.document_01") + mdfe.action_document_confirm() + with self.assertRaises(UserError) as captured_exception: + damdfe_report._render_qweb_pdf([mdfe.id]) + self.assertEqual( + captured_exception.exception.args[0], + "You can only print a DAMDFE of a MDFe(58).", + ) + + def test_generate_damdfe_brazil_fiscal_report_partner(self): + mdfe = self.env.ref("l10n_br_mdfe.demo_mdfe_lc_modal_rodoviario") + mdfe.action_document_confirm() + mdfe.issuer = "partner" + mdfe.view_pdf() + + self.assertTrue(mdfe.file_report_id)