Skip to content

Commit

Permalink
[MIG] base_search_custom_field_filter: Migration to 18.0
Browse files Browse the repository at this point in the history
  • Loading branch information
absal-smile committed Feb 3, 2025
1 parent b97f577 commit 3efeeb6
Show file tree
Hide file tree
Showing 2 changed files with 40 additions and 2 deletions.
38 changes: 38 additions & 0 deletions base_search_custom_field_filter/tests/test_filter.py
Original file line number Diff line number Diff line change
Expand Up @@ -30,3 +30,41 @@ def test_1(self):
"""
)
)

def test_invalid_expression(self):
filter_form = Form(self.env["ir.ui.custom.field.filter"])
filter_form.model_id = self.env.ref("base.model_res_partner")
filter_form.name = "Invalid Expression"
with self.assertRaises(exceptions.ValidationError):
filter_form.expression = "invalid_expression"
filter_form.save()

def test_valid_expression(self):
filter_form = Form(self.env["ir.ui.custom.field.filter"])
filter_form.model_id = self.env.ref("base.model_res_partner")
filter_form.name = "Valid Expression"
filter_form.expression = "valid_expression"
filter_form.save()
arch = self.env["res.partner"].get_view(False, "search")["arch"]
search = etree.fromstring(arch)
self.assertTrue(
search.xpath(
"""
//search
/field[@name="valid_expression"]
"""
)
)

def test_duplicate_filter(self):
filter_form = Form(self.env["ir.ui.custom.field.filter"])
filter_form.model_id = self.env.ref("base.model_res_partner")
filter_form.name = "Duplicate Filter"
filter_form.expression = "duplicate_expression"
filter_form.save()
with self.assertRaises(exceptions.ValidationError):
duplicate_filter_form = Form(self.env["ir.ui.custom.field.filter"])
duplicate_filter_form.model_id = self.env.ref("base.model_res_partner")
duplicate_filter_form.name = "Duplicate Filter"
duplicate_filter_form.expression = "duplicate_expression"
duplicate_filter_form.save()
Original file line number Diff line number Diff line change
Expand Up @@ -5,13 +5,13 @@
<record id="view_ir_ui_custom_field_filter_form" model="ir.ui.view">
<field name="model">ir.ui.custom.field.filter</field>
<field name="arch" type="xml">
<tree editable="bottom">
<list editable="bottom">
<field name="sequence" widget="handle" />
<field name="model_id" options="{'no_create': True}" />
<field name="name" />
<field name="expression" />
<field name="position_after" />
</tree>
</list>
</field>
</record>

Expand Down

0 comments on commit 3efeeb6

Please sign in to comment.