OCA reporting engine fork for dev and update.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

47 lines
2.2 KiB

  1. # Copyright 2019 Creu Blanca
  2. # License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html).
  3. from odoo.tests.common import TransactionCase
  4. class TestReportContext(TransactionCase):
  5. def test_report_01(self):
  6. company = self.browse_ref('base.main_company')
  7. report = self.browse_ref('web.action_report_internalpreview')
  8. self.env['ir.config_parameter'].sudo().set_param(
  9. 'report.default.context', '{"test_parameter": 1}')
  10. report.write({'context': '{"test_parameter": 2}'})
  11. action = report.with_context(test_parameter=3).report_action(company)
  12. self.assertEqual(3, action['context']['test_parameter'])
  13. def test_report_02(self):
  14. company = self.browse_ref('base.main_company')
  15. report = self.browse_ref('web.action_report_internalpreview')
  16. self.env['ir.config_parameter'].sudo().set_param(
  17. 'report.default.context', '{"test_parameter": 1}')
  18. report.write({'context': '{"test_parameter": 2}'})
  19. action = report.report_action(company)
  20. self.assertEqual(2, action['context']['test_parameter'])
  21. def test_report_03(self):
  22. company = self.browse_ref('base.main_company')
  23. report = self.browse_ref('web.action_report_internalpreview')
  24. self.env['ir.config_parameter'].sudo().set_param(
  25. 'report.default.context', '{"test_parameter": 1}')
  26. action = report.with_context(test_parameter=3).report_action(company)
  27. self.assertEqual(3, action['context']['test_parameter'])
  28. def test_report_04(self):
  29. company = self.browse_ref('base.main_company')
  30. report = self.browse_ref('web.action_report_internalpreview')
  31. report.write({'context': '{"test_parameter": 2}'})
  32. action = report.report_action(company)
  33. self.assertEqual(2, action['context']['test_parameter'])
  34. def test_report_05(self):
  35. company = self.browse_ref('base.main_company')
  36. report = self.browse_ref('web.action_report_internalpreview')
  37. self.env['ir.config_parameter'].sudo().set_param(
  38. 'report.default.context', '{"test_parameter": 1}')
  39. action = report.report_action(company)
  40. self.assertEqual(1, action['context']['test_parameter'])