diff --git a/website_sale_product_attribute_value_filter_existing/__manifest__.py b/website_sale_product_attribute_value_filter_existing/__manifest__.py
index ff27d36acb..ee2374ab53 100644
--- a/website_sale_product_attribute_value_filter_existing/__manifest__.py
+++ b/website_sale_product_attribute_value_filter_existing/__manifest__.py
@@ -3,7 +3,7 @@
{
"name": "Website Sale Attribute Value Existing",
"summary": "Allow hide attributes values not used in variants",
- "version": "16.0.1.0.3",
+ "version": "17.0.1.0.0",
"development_status": "Production/Stable",
"category": "Website",
"website": "https://github.com/OCA/e-commerce",
diff --git a/website_sale_product_attribute_value_filter_existing/static/src/js/website_sale_product_attribute_value_filter_existing_tour.esm.js b/website_sale_product_attribute_value_filter_existing/static/src/js/website_sale_product_attribute_value_filter_existing_tour.esm.js
index 421a99524d..3b04f9fadc 100644
--- a/website_sale_product_attribute_value_filter_existing/static/src/js/website_sale_product_attribute_value_filter_existing_tour.esm.js
+++ b/website_sale_product_attribute_value_filter_existing/static/src/js/website_sale_product_attribute_value_filter_existing_tour.esm.js
@@ -1,43 +1,42 @@
/** @odoo-module **/
-import tour from "web_tour.tour";
+import {registry} from "@web/core/registry";
-tour.register(
- "website_sale_product_attribute_value_filter_existing",
- {
+registry
+ .category("web_tour.tours")
+ .add("website_sale_product_attribute_value_filter_existing", {
test: true,
url: "/shop",
- },
- // No product has the yellow colour attribute defined.
- // When enter to "/shop" the attribute "test yellow" should not appear in the list of filters by attribute.
- [
- // For the following steps it is checked that the attribute "test yellow" is
- // not present in the list but the attributes "test red", "test blue" and
- // "test green" must be present.
- {
- content:
- "Search a product. Ensure 'test red', 'test blue' and 'test green' attributes are present while 'Test yellow' is not.",
- trigger: "form input[name=search]",
- run: "text desk",
- extra_trigger:
- ".js_attributes:not(:contains('Test yellow')):has(label:contains('Test red')), .js_attributes:not(:contains('Test yellow')):has(label:contains('Test blue')), .js_attributes:not(:contains('Test yellow')):has(label:contains('Test green'))",
- },
- {
- content:
- "Submit search button. Ensure 'test red', 'test blue' and 'test green' attributes are present while 'Test yellow' is not.",
- trigger: 'form:has(input[name="search"]) .oe_search_button',
- extra_trigger:
- ".js_attributes:not(:contains('Test yellow')):has(label:contains('Test red')), .js_attributes:not(:contains('Test yellow')):has(label:contains('Test blue')), .js_attributes:not(:contains('Test yellow')):has(label:contains('Test green'))",
- },
- // After searching, the attributes "test red" and "test green" must be present.
- // "Test yelow" should not be present as it is not used in any product and
- // "test blue" should not be present as it is not used in the products shown.
- {
- content:
- "Go to /shop after the search. Ensure 'test red' and 'test green' attributes are present while 'Test yellow' and 'test blue' are not.",
- trigger: "a[href='/shop']",
- extra_trigger:
- ".js_attributes:not(:contains('Test blue'), :contains('Test yellow')):has(label:contains('Test green')), .js_attributes:not(:contains('Test blue'), :contains('Test yellow')):has(label:contains('Test red'))",
- },
- ]
-);
+ steps: () => [
+ // No product has the yellow colour attribute defined.
+ // When enter to "/shop" the attribute "test yellow" should not appear in the list of filters by attribute.
+ // For the following steps it is checked that the attribute "test yellow" is
+ // not present in the list but the attributes "test red", "test blue" and
+ // "test green" must be present.
+ {
+ content:
+ "Ensure 'test red', 'test blue' and 'test green' attributes are present while 'Test yellow' is not.",
+ trigger: "body",
+ extra_trigger:
+ ".js_attributes:not(:contains('Test yellow')):has(label:contains('Test red')), .js_attributes:not(:contains('Test yellow')):has(label:contains('Test blue')), .js_attributes:not(:contains('Test yellow')):has(label:contains('Test green'))",
+ },
+ {
+ content:
+ "Selecting the 'test green' attribute.",
+ trigger: ".form-check:has(label:contains('Test green')) input[type='checkbox']",
+ run: "click",
+
+ },
+ // After selecting, the attributes "test red" and "test green" must be present.
+ // "Test yellow" should not be present as it is not used in any product and
+ // "test blue" should not be present as it is not used in the products shown.
+ {
+ content:
+ "Ensure 'test red' and 'test green' attributes are present while 'Test yellow' and 'test blue' are not.",
+ trigger: "body",
+ extra_trigger:
+ ".js_attributes:not(:contains('Test blue')):not(:contains('Test yellow')):has(label:contains('Test green')), .js_attributes:not(:contains('Test blue')):not(:contains('Test yellow')):has(label:contains('Test red'))",
+
+ },
+ ],
+ });
diff --git a/website_sale_product_attribute_value_filter_existing/views/templates.xml b/website_sale_product_attribute_value_filter_existing/views/templates.xml
index 4f6487657b..0c85c5e8e2 100644
--- a/website_sale_product_attribute_value_filter_existing/views/templates.xml
+++ b/website_sale_product_attribute_value_filter_existing/views/templates.xml
@@ -10,15 +10,17 @@
attr_values_used & v
attr_values_used & v
-
+
+
+
attr_values_used & v