diff --git a/test_themes/__manifest__.py b/test_themes/__manifest__.py index dd855d815..6fa2e8998 100644 --- a/test_themes/__manifest__.py +++ b/test_themes/__manifest__.py @@ -40,10 +40,14 @@ 'theme_zap', ], 'data': [ - 'views/assets.xml', 'views/website_navbar_templates.xml', ], 'installable': True, 'application': False, 'post_init_hook': 'post_init_hook', + 'assets': { + 'web.assets_frontend': [ + 'test_themes/static/src/js/navbar.js', + ], + } } diff --git a/test_themes/tests/test_crawl.py b/test_themes/tests/test_crawl.py index 6d0c1591d..306157ef1 100644 --- a/test_themes/tests/test_crawl.py +++ b/test_themes/tests/test_crawl.py @@ -13,12 +13,23 @@ class Crawler(HttpCase): Website = self.env['website'] websites_themes = Website.get_test_themes_websites() assert len(websites_themes) == len(self.env.ref('base.module_test_themes').dependencies_id) + websites_themes_names = websites_themes.mapped('name') def test_crawling(): for website in websites_themes.filtered(lambda w: w.theme_id.name != 'theme_default'): + # Ensure theme is rendering without crashing r = self.url_open('/?fw=%s&debug=assets' % website.id) - self.assertEqual(r.status_code, 200, "Ensure rendering went fine as public user") - self.assertTrue('/%s/static/src' % website.theme_id.name in r.text, "Ensure rendering went fine as public user") + self.assertEqual(r.status_code, 200, "Ensure theme is rendering without crashing") + + # Ensure correct theme is actually loaded, see commit message + theme_asset_url = '/web/assets/debug/%s/web.assets_frontend.css' % website.id + self.assertTrue(theme_asset_url in r.text) + r = self.url_open(theme_asset_url) + self.assertTrue('/%s/static/src' % website.theme_id.name in r.text, "Ensure theme is actually loaded") + # Ensure other website/themes are not loaded + for name in websites_themes_names: + if name != website.theme_id.name: + self.assertFalse('/%s/static/src' % name in r.text, "Ensure other themes do not pollute current one") # 1. Test as public user test_crawling() diff --git a/test_themes/views/assets.xml b/test_themes/views/assets.xml deleted file mode 100644 index 276717395..000000000 --- a/test_themes/views/assets.xml +++ /dev/null @@ -1,10 +0,0 @@ - - - -