Initial commit: Odoo 18.0-20251222 extra-addons
Some checks failed
pre-commit / pre-commit (push) Has been cancelled
tests / Detect unreleased dependencies (push) Has been cancelled
tests / test with OCB (push) Has been cancelled
tests / test with Odoo (push) Has been cancelled

This commit is contained in:
tocmo0nlord
2026-03-13 20:43:25 +00:00
parent 36e847a7df
commit adbe430761
9472 changed files with 1265727 additions and 0 deletions

View File

@@ -0,0 +1,4 @@
# © 2016 Therp BV <http://therp.nl>
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
from . import test_report_qweb_pdf_watermark

View File

@@ -0,0 +1,63 @@
# © 2016 Therp BV <http://therp.nl>
# Copyright 2023 Onestein - Anjeel Haria
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
from PIL import Image
from odoo.tests.common import HttpCase
class TestReportQwebPdfWatermark(HttpCase):
def test_report_qweb_pdf_watermark(self):
Image.init()
# with our image, we have three
self._test_report_images(3)
self.env.ref("report_qweb_pdf_watermark.demo_report").write(
{"pdf_watermark_expression": False}
)
# without, we have two
self._test_report_images(2)
self.env.ref("report_qweb_pdf_watermark.demo_report").write(
{"pdf_watermark": self.env.user.company_id.logo}
)
# and now we should have three again
self._test_report_images(3)
# test use company watermark
self.env.ref("report_qweb_pdf_watermark.demo_report").write(
{"pdf_watermark": False}
)
self.env.ref("report_qweb_pdf_watermark.demo_report").write(
{"use_company_watermark": True}
)
self.env.ref("base.main_company").write(
{"pdf_watermark": self.env.user.company_id.logo}
)
self._test_report_images(3)
def _test_report_images(self, number):
pdf, _ = (
self.env["ir.actions.report"]
.with_context(force_report_rendering=True)
._render_qweb_pdf(
"report_qweb_pdf_watermark.demo_report",
self.env["res.users"].search([]).ids,
)
)
self.assertEqual(pdf.count(b"/Subtype /Image"), number)
def test_pdf_has_usable_pages(self):
# test 0
numpages = 0
# pdf_has_usable_pages(self, pdf_watermark)
with self.assertLogs(level="ERROR"):
self.assertFalse(
self.env["ir.actions.report"].pdf_has_usable_pages(numpages)
)
# test 1
numpages = 1
self.assertTrue(self.env["ir.actions.report"].pdf_has_usable_pages(numpages))
# test 2
numpages = 2
self.assertTrue(self.env["ir.actions.report"].pdf_has_usable_pages(numpages))