[MIG] Use safe_eval wrapped time module. Fix deprecation warnings.
Co-authored-by: Alexis de Lattre <alexis.delattre@akretion.com>pull/744/head
parent
493c47f455
commit
f52515edb5
|
@ -3,7 +3,8 @@
|
||||||
import json
|
import json
|
||||||
import mimetypes
|
import mimetypes
|
||||||
|
|
||||||
from werkzeug import exceptions, url_decode
|
from werkzeug import exceptions
|
||||||
|
from werkzeug.urls import url_decode
|
||||||
|
|
||||||
from odoo.http import request, route
|
from odoo.http import request, route
|
||||||
from odoo.tools import html_escape
|
from odoo.tools import html_escape
|
||||||
|
|
|
@ -2,12 +2,11 @@
|
||||||
# Copyright 2018 ACSONE SA/NV
|
# Copyright 2018 ACSONE SA/NV
|
||||||
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
|
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
|
||||||
import logging
|
import logging
|
||||||
import time
|
|
||||||
|
|
||||||
from odoo import _, api, fields, models
|
from odoo import _, api, fields, models
|
||||||
from odoo.exceptions import ValidationError
|
from odoo.exceptions import ValidationError
|
||||||
from odoo.tools.misc import find_in_path
|
from odoo.tools.misc import find_in_path
|
||||||
from odoo.tools.safe_eval import safe_eval
|
from odoo.tools.safe_eval import safe_eval, time
|
||||||
|
|
||||||
logger = logging.getLogger(__name__)
|
logger = logging.getLogger(__name__)
|
||||||
|
|
||||||
|
@ -180,7 +179,7 @@ class IrActionsReport(models.Model):
|
||||||
report = self.get_from_report_name(self.report_name, self.report_type)
|
report = self.get_from_report_name(self.report_name, self.report_type)
|
||||||
if report.print_report_name and not len(res_ids) > 1:
|
if report.print_report_name and not len(res_ids) > 1:
|
||||||
obj = self.env[self.model].browse(res_ids)
|
obj = self.env[self.model].browse(res_ids)
|
||||||
return safe_eval(report.print_report_name, {"object": obj,})
|
return safe_eval(report.print_report_name, {"object": obj, "time": time})
|
||||||
return "{}.{}".format(self.name, self.py3o_filetype)
|
return "{}.{}".format(self.name, self.py3o_filetype)
|
||||||
|
|
||||||
def _get_attachments(self, res_ids):
|
def _get_attachments(self, res_ids):
|
||||||
|
|
|
@ -279,7 +279,7 @@ class Py3oReport(models.TransientModel):
|
||||||
self.ensure_one()
|
self.ensure_one()
|
||||||
attachment = existing_reports_attachment.get(model_instance.id)
|
attachment = existing_reports_attachment.get(model_instance.id)
|
||||||
if attachment and self.ir_actions_report_id.attachment_use:
|
if attachment and self.ir_actions_report_id.attachment_use:
|
||||||
content = base64.decodestring(attachment.datas)
|
content = base64.b64decode(attachment.datas)
|
||||||
report_file = tempfile.mktemp("." + self.ir_actions_report_id.py3o_filetype)
|
report_file = tempfile.mktemp("." + self.ir_actions_report_id.py3o_filetype)
|
||||||
with open(report_file, "wb") as f:
|
with open(report_file, "wb") as f:
|
||||||
f.write(content)
|
f.write(content)
|
||||||
|
|
|
@ -57,7 +57,7 @@ class TestReportPy3o(TransactionCase):
|
||||||
with self.assertRaises(ValidationError) as e:
|
with self.assertRaises(ValidationError) as e:
|
||||||
self.report.py3o_filetype = False
|
self.report.py3o_filetype = False
|
||||||
self.assertEqual(
|
self.assertEqual(
|
||||||
e.exception.name, "Field 'Output Format' is required for Py3O report"
|
e.exception.args[0], "Field 'Output Format' is required for Py3O report"
|
||||||
)
|
)
|
||||||
|
|
||||||
def _render_patched(self, result_text="test result", call_count=1):
|
def _render_patched(self, result_text="test result", call_count=1):
|
||||||
|
@ -121,7 +121,7 @@ class TestReportPy3o(TransactionCase):
|
||||||
# put a new content into tha attachement and check that the next
|
# put a new content into tha attachement and check that the next
|
||||||
# time we ask the report we received the saved attachment not a newly
|
# time we ask the report we received the saved attachment not a newly
|
||||||
# generated document
|
# generated document
|
||||||
created_attachement.datas = base64.encodestring(b"new content")
|
created_attachement.datas = base64.b64encode(b"new content")
|
||||||
res = self.report._render(self.env.user.ids)
|
res = self.report._render(self.env.user.ids)
|
||||||
self.assertEqual((b"new content", self.report.py3o_filetype), res)
|
self.assertEqual((b"new content", self.report.py3o_filetype), res)
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue