Skip to content

Commit

Permalink
[REF] *: use iframe hoot pseudo selector in tour triggers
Browse files Browse the repository at this point in the history
In this commit, we change rest of triggers in tours where an iframe is
selected (suite of #156653).
To do this, we use the :iframe HOOT pseudo-selector.
With this changes, we can now remove the getNodesFromSelector
function in odoo/addons/web_tour/static/src/tour_service/tour_utils.js
Note that in this previous function, a ([is-ready]="true") check was
made for iframe elements but was only necessary for few of them (7).
So, a stepUtils.waitIframeIsReady() has been added to check this state.

closes odoo#783

Related: odoo/odoo#157217
Related: odoo/enterprise#58474
Signed-off-by: Julien Mougenot (jum) <[email protected]>
  • Loading branch information
pipu-odoo authored and xlu-odoo committed Jun 21, 2024
1 parent 4bcb53c commit 3862b4a
Showing 1 changed file with 12 additions and 10 deletions.
22 changes: 12 additions & 10 deletions theme_test_custo/static/tests/tours/theme_menu_hierarchies.js
Original file line number Diff line number Diff line change
@@ -1,59 +1,61 @@
/** @odoo-module */

import wTourUtils from '@website/js/tours/tour_utils';
import { stepUtils } from "@web_tour/tour_service/tour_utils";

wTourUtils.registerWebsitePreviewTour('theme_menu_hierarchies', {
url: '/example',
test: true,
}, () => [
stepUtils.waitIframeIsReady(),
{
content: 'Check Mega Menu is correctly created',
trigger: "iframe .top_menu a.o_mega_menu_toggle",
trigger: ":iframe .top_menu a.o_mega_menu_toggle",
}, {
content: 'Check Mega Menu content',
trigger: "iframe .top_menu div.o_mega_menu.show .fa-cube",
trigger: ":iframe .top_menu div.o_mega_menu.show .fa-cube",
run: () => null, // It's a check.
}, {
content: 'Check new top level menu is correctly created',
trigger: 'iframe .top_menu .nav-item.dropdown .dropdown-toggle:contains("Example 1")',
trigger: ':iframe .top_menu .nav-item.dropdown .dropdown-toggle:contains("Example 1")',
}, {
content: 'Check sub menu are correctly created',
trigger: 'iframe .top_menu .dropdown-menu.show a.dropdown-item:contains("Item 1")',
trigger: ':iframe .top_menu .dropdown-menu.show a.dropdown-item:contains("Item 1")',
run: () => null, // It's a check.
}, {
content: 'The new menu hierarchy should not be included in the navbar',
trigger: 'iframe body:not(:has(.top_menu a[href="/dogs"]))',
trigger: ':iframe body:not(:has(.top_menu a[href="/dogs"]))',
run: () => null, // It's a check.
}, {
content: 'The new menu hierarchy should be inside the footer',
trigger: 'iframe footer ul li a[href="/dogs"]',
trigger: ':iframe footer ul li a[href="/dogs"]',
run: () => null, // It's a check.
},
...wTourUtils.clickOnEditAndWaitEditMode(),
{
content: 'Click on footer',
trigger: 'iframe footer',
trigger: ':iframe footer',
}, {
content: 'The theme custom footer template should be listed and selected',
trigger: 'we-select[data-variable="footer-template"] we-toggler img[src*="/theme_test_custo"]',
run: () => null, // It's a check.
}, {
content: 'Click on header',
trigger: 'iframe header',
trigger: ':iframe header',
}, {
content: 'The theme custom header template should be listed and selected',
trigger: 'we-select[data-variable="header-template"] we-toggler img[src*="/theme_test_custo"]',
run: () => null, // It's a check.
}, {
content: 'Click on image which has a shape',
trigger: 'iframe #wrap .s_text_image img[data-shape]',
trigger: ':iframe #wrap .s_text_image img[data-shape]',
}, {
content: 'The theme custom "Blob 01" shape should be listed and selected',
trigger: 'we-select[data-name="shape_img_opt"] we-toggler:contains("Blob 01")',
run: () => null, // It's a check.
}, {
content: 'Click on section which has a bg shape',
trigger: 'iframe #wrap .s_text_block[data-oe-shape-data]',
trigger: ':iframe #wrap .s_text_block[data-oe-shape-data]',
}, {
content: 'The theme custom "Curve 01" shape should be listed and selected',
trigger: 'we-select[data-name="bg_shape_opt"] we-toggler:contains("Curve 01")',
Expand Down

0 comments on commit 3862b4a

Please sign in to comment.