diff --git a/addons/website/static/tests/tours/website_navbar_menu.js b/addons/website/static/tests/tours/website_navbar_menu.js new file mode 100644 index 00000000000..e3523f69076 --- /dev/null +++ b/addons/website/static/tests/tours/website_navbar_menu.js @@ -0,0 +1,20 @@ +odoo.define("website.tour.website_navbar_menu", function (require) { +"use strict"; + +var tour = require("web_tour.tour"); + +tour.register("website_navbar_menu", { + test: true, + url: "/", +}, [ + { + content: "Ensure menus are in DOM", + trigger: '#top_menu .nav-item a:contains("Test Tour Menu")', + run: function () {}, // it's a check + }, { + content: "Ensure menus loading is done (so they are actually visible)", + trigger: 'body:not(:has(.o_menu_loading))', + run: function () {}, // it's a check + } +]); +}); diff --git a/addons/website/tests/test_ui.py b/addons/website/tests/test_ui.py index 92f0796fc9b..d739ed877b6 100644 --- a/addons/website/tests/test_ui.py +++ b/addons/website/tests/test_ui.py @@ -110,6 +110,17 @@ class TestUi(odoo.tests.HttpCase): def test_03_backend_dashboard(self): self.start_tour("/", 'backend_dashboard', login='admin') + def test_04_website_navbar_menu(self): + website = self.env['website'].search([], limit=1) + self.env['website.menu'].create({ + 'name': 'Test Tour Menu', + 'url': '/test-tour-menu', + 'parent_id': website.menu_id.id, + 'sequence': 0, + 'website_id': website.id, + }) + self.start_tour("/", 'website_navbar_menu') + def test_05_specific_website_editor(self): website_default = self.env['website'].search([], limit=1) new_website = self.env['website'].create({'name': 'New Website'}) diff --git a/addons/website/views/assets.xml b/addons/website/views/assets.xml index a0d00feb356..1015427043b 100644 --- a/addons/website/views/assets.xml +++ b/addons/website/views/assets.xml @@ -25,6 +25,7 @@