diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index b8ea4f11a..fcad64247 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -105,7 +105,7 @@ repos: - "eslint@8.24.0" - "eslint-plugin-jsdoc@" - repo: https://github.com/pre-commit/pre-commit-hooks - rev: v4.3.0 + rev: v6.0.0 hooks: - id: trailing-whitespace # exclude autogenerated files diff --git a/product_variant_default_code/models/product.py b/product_variant_default_code/models/product.py index 698b0a823..a9e578cce 100644 --- a/product_variant_default_code/models/product.py +++ b/product_variant_default_code/models/product.py @@ -232,6 +232,8 @@ def _generate_default_code(self): else: product_attrs = defaultdict(str) reference_mask = ReferenceMask(self.product_tmpl_id.reference_mask) + if reference_mask.template is False: + reference_mask.template = "" main_lang = self.product_tmpl_id._guess_main_lang() for attr in self.product_template_attribute_value_ids: value = attr.product_attribute_value_id diff --git a/product_variant_default_code/tests/test_variant_default_code.py b/product_variant_default_code/tests/test_variant_default_code.py index 962f7e346..212468af4 100644 --- a/product_variant_default_code/tests/test_variant_default_code.py +++ b/product_variant_default_code/tests/test_variant_default_code.py @@ -384,3 +384,15 @@ def test_18_both_prefix_and_mask_changing(self): ).name[0:2] ) self.assertEqual(product.default_code, expected_code) + + def test_19_mask_template_is_false(self): + self.env.user.groups_id |= self.group_default_code + self.template1.write({"reference_mask": False}) + self.assertFalse(self.template1.reference_mask) + for product in self.template1.product_variant_ids: + generated_code = product._generate_default_code() + self.assertEqual( + generated_code, + "", + "The default_code should be an empty string if the reference_mask is False.", + )