diff --git a/.travis.yml b/.travis.yml index 0169cfb..f78b8b0 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,5 +1,7 @@ language: python sudo: false +dist: trusty +group: beta cache: apt: true directories: @@ -15,6 +17,8 @@ services: - postgresql addons: + sources: + - pov-wkhtmltopdf apt: packages: - expect-dev # provides unbuffer utility @@ -32,6 +36,7 @@ env: global: - ODOO_VERSION="8.0" matrix: + - ODOO_VERSION="9.0" - ODOO_VERSION="8.0" - ODOO_VERSION="7.0" @@ -44,6 +49,8 @@ install: - compare -version - python bootstrap.py - bin/buildout -c buildout.v${ODOO_VERSION}.cfg + # required for odoo9 to find lessc + - export PATH=$PATH:$TRAVIS_BUILD_DIR/bin - createdb ort - bin/start_odoo -d ort --stop-after-init -i base diff --git a/buildout.v9.0.cfg b/buildout.v9.0.cfg new file mode 100644 index 0000000..3627103 --- /dev/null +++ b/buildout.v9.0.cfg @@ -0,0 +1,22 @@ +[buildout] +extends = buildout.cfg +parts += node + +[odoo] +version = git https://github.com/oca/ocb.git ocb 9.0 --depth=1 + +[versions] +psutil = 2.2.1 +feedparser = 5.1.3 +paramiko = 1.16.0 +gevent = 1.0.2 +pysftp = 0.2.8 +wstools = 0.4.3 + +[node] +recipe = gp.recipe.node +npms = npm + less + less-plugin-clean-css +scripts = npm + lessc diff --git a/odoo_report_testing/tests/demo/model_base_language_install_v9.pdf b/odoo_report_testing/tests/demo/model_base_language_install_v9.pdf new file mode 100644 index 0000000..f93f4c1 Binary files /dev/null and b/odoo_report_testing/tests/demo/model_base_language_install_v9.pdf differ diff --git a/odoo_report_testing/tests/test_assertions.py b/odoo_report_testing/tests/test_assertions.py index 964e421..c452fcf 100644 --- a/odoo_report_testing/tests/test_assertions.py +++ b/odoo_report_testing/tests/test_assertions.py @@ -1,12 +1,15 @@ import os -from odoo_report_testing.assertions import OdooAssertions try: # from odoo 7.0 to 9.0 from openerp.tests.common import TransactionCase + from openerp.release import major_version except: - # from odoo 10.0 + # odoo 10.0 from odoo.tests.common import TransactionCase + from odoo.release import major_version + +from odoo_report_testing.assertions import OdooAssertions class TestAssertions(TransactionCase, OdooAssertions): @@ -85,16 +88,23 @@ def test_assertPdf(self): ) def test_assertOdooReport(self): - if hasattr(self, 'env'): - ref_file = 'technical_guide_report_webkit_v8.pdf' - webkit_module_id = self.env.ref('base.module_report_webkit').id - else: + model = 'ir.module.module' + report = 'ir.module.reference' + if major_version == '7.0': ref_file = 'technical_guide_report_webkit_v7.pdf' - webkit_module_id = self.ref('base.module_report_webkit') + object_id = self.ref('base.module_report_webkit') + elif major_version == '8.0': + object_id = self.env.ref('base.module_report_webkit').id + ref_file = 'technical_guide_report_webkit_v8.pdf' + else: # version 9 + object_id = self.env.ref('base.model_base_language_install').id + model = 'ir.model' + ref_file = 'model_base_language_install_v9.pdf' + report = 'base.report_irmodeloverview' + ref_file = os.path.join( os.path.dirname(__file__), 'demo', ref_file ) self.assertOdooReport( - ref_file, 'ir.module.module', 'ir.module.reference', - [webkit_module_id] + ref_file, model, report, [object_id] ) diff --git a/odoo_report_testing/tests/test_reports.py b/odoo_report_testing/tests/test_reports.py index 3f4f187..1feb47d 100644 --- a/odoo_report_testing/tests/test_reports.py +++ b/odoo_report_testing/tests/test_reports.py @@ -1,11 +1,15 @@ import os -from odoo_report_testing.assertions import OdooAssertions + try: # from odoo 7.0 to 9.0 from openerp.tests.common import TransactionCase + from openerp.release import major_version except: - # from odoo 10.0 + # odoo 10.0 from odoo.tests.common import TransactionCase + from odoo.release import major_version + +from odoo_report_testing.assertions import OdooAssertions from odoo_report_testing.reports import pdftools @@ -364,15 +368,20 @@ def test_pdfdiff_pages_diff_p2(self): self.clean(values) def test_generate_report(self): - if hasattr(self, 'env'): - module_id = self.env.ref('base.module_report_webkit').id - version7 = False - else: - module_id = self.ref('base.module_report_webkit') + version7 = False + model = 'ir.module.module' + report = 'ir.module.reference' + if major_version == '7.0': version7 = True + object_id = self.ref('base.module_report_webkit') + elif major_version == '8.0': + object_id = self.env.ref('base.module_report_webkit').id + else: # version 9 + object_id = self.env.ref('base.model_base_language_install').id + model = 'ir.model' + report = 'base.report_irmodeloverview' pdftools.generateReport( - self.cr, self.uid, 'ir.module.module', 'ir.module.reference', - [module_id], version7=version7 + self.cr, self.uid, model, report, [object_id], version7=version7 ) def clean(self, values):