|
| 1 | +from odoo import api, fields, models, _, tools |
| 2 | +from odoo.addons.module_2.models import base_test_models # OLS03003 |
| 3 | + |
| 4 | +class ModelWithDiagnostics(models.Model): |
| 5 | + _name = "module_1.diagnostics_model" |
| 6 | + _inherit = "module_2.empty_model" # OLS03004 |
| 7 | + _description = "Model to test diagnostics" |
| 8 | + |
| 9 | + int_field = fields.Integer() |
| 10 | + test_models = fields.One2many("pygls.tests.base_test_model", "diagnostics_id") |
| 11 | + date = fields.Date() |
| 12 | + |
| 13 | + def a_method(self): |
| 14 | + self.env["module_2.empty_model"] # OLS03001 |
| 15 | + self.env["non.existent.model"] # OLS03002 |
| 16 | + self.env["module_1.no_base_model"] # OLS03005 |
| 17 | + |
| 18 | + def test_search_domain(self): |
| 19 | + self.search(5) # OLS03006 |
| 20 | + self.search(("int_field", "=", 0)) # OLS03006 |
| 21 | + self.search([("int_field", "=", 0)]) |
| 22 | + self.search([("int_field", "!=", 0)]) |
| 23 | + self.search([("int_field", ">", 0)]) |
| 24 | + self.search([("int_field", "<", 0)]) |
| 25 | + self.search([("int_field", ">=", 0)]) |
| 26 | + self.search([("int_field", "<=", 0)]) |
| 27 | + self.search([("int_field", "like", 0)]) |
| 28 | + self.search([("int_field", "ilike", 0)]) |
| 29 | + self.search([("int_field", "in", [0])]) |
| 30 | + self.search([("int_field", "not in", [0])]) |
| 31 | + self.search([("test_models", "child_of", 0)]) |
| 32 | + self.search([("test_models", "parent_of", 0)]) |
| 33 | + self.search([("test_models", "any", [])]) |
| 34 | + self.search([("test_models", "not any", [])]) |
| 35 | + a = [("int_field", "=", 0)] |
| 36 | + self.search(a) |
| 37 | + self.search([]) |
| 38 | + self.search([("int_field",)]) # OLS03007 |
| 39 | + self.search([("int_field", "=")]) # OLS03007 |
| 40 | + self.search([("|", "int_field", "=", 0)]) # OLS03007 |
| 41 | + self.search(["|", ("int_field", "=", 0), ("int_field", "=", 1)]) |
| 42 | + self.search(["&", ("int_field", "=", 0), ("int_field", "=", 1)]) |
| 43 | + self.search(["!", ("int_field", "=", 0)]) |
| 44 | + self.search(["or", ("int_field", "=", 0), ("int_field", "=", 1)]) # OLS03008 |
| 45 | + self.search(["not", ("int_field", "=", 0)]) # OLS03008 |
| 46 | + self.search([("int_field", "lt", 0)]) # OLS03009 |
| 47 | + self.search(["|", ("int_field", "=", 0)]) # OLS03010 |
| 48 | + self.search(["&", ("int_field", "=", 0)]) # OLS03010 |
| 49 | + self.search(["!"]) # OLS03010 |
| 50 | + self.search(["!", ("int_field", "=", 0), ("int_field", "=", 0)]) |
| 51 | + self.search([("wrong_field", "=", 0)]) # OLS03011 |
| 52 | + self.search([("test_models.partner_id", "=", 0)]) |
| 53 | + self.search([("test_models.wrong_field", "=", 0)]) # OLS03011 |
| 54 | + |
| 55 | + self.search([("date.year_number", "=", 0)]) |
| 56 | + self.search([("date.quarter_number", "=", 0)]) |
| 57 | + self.search([("date.month_number", "=", 0)]) |
| 58 | + self.search([("date.iso_week_number", "=", 0)]) |
| 59 | + self.search([("date.day_of_week", "=", 0)]) |
| 60 | + self.search([("date.day_of_month", "=", 0)]) |
| 61 | + self.search([("date.day_of_year", "=", 0)]) |
| 62 | + self.search([("date.hour_number", "=", 0)]) |
| 63 | + self.search([("date.minute_number", "=", 0)]) |
| 64 | + self.search([("date.second_number", "=", 0)]) |
| 65 | + self.search([("date.millisecond_number", "=", 0)]) # OLS03012 |
| 66 | + |
| 67 | + self.search([("int_field.wrong_attr", "=", 0)]) # OLS03013 |
| 68 | + self.search([("test_models.wrong_attr", "=", 0)]) # TODO, no diagnostic for that right now |
0 commit comments