diff options
| author | Odoo's Mergebot <xmo+roboto@odoo.com> | 2019-11-07 08:37:12 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2019-11-07 08:37:12 +0100 |
| commit | cfc65bd1b72b6fb7833f67fa580fa9fdac28b1f5 (patch) | |
| tree | c1aa353aa7e29d0ed918911dbdce456ed957b72e /addons/maintenance/tests/test_maintenance.py | |
| parent | a3f5afdd53f5f0d8d76427fe14dce6f02e064a75 (diff) | |
| parent | bc8fe668495a1d080ff883d5e61e961a128669de (diff) | |
[MERGE] various: Make the test suite demo data independant
Purpose
=======
This is the first huge step to improve the test suite in several ways:
- Make them demo data independent, allowing to modify the demo data without having to adapt the tests depending on it. It also allows to have a beautiful + convenient demo dataset to make a demonstration, and to configure complex data in the tests to manage the corner cases.
- Improve the test performances by converting them into SavepointCase. Each test will be rollbacked to it's initial state, after the setUpClass call. That way the different data are not re-created at each test for nothing.
- Introduce several test classes in base/tests/common.py to launch a TransactionCase, HttpCase or SavepointCase test with an available demo user, portal user or a large set of partners.
- This is the first step to tend to a rolling release process, allowing to execute the tests (or a subset of the tests) on a migrated base, for example.
closes odoo/odoo#39868
Taskid: 2075739
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
Diffstat (limited to 'addons/maintenance/tests/test_maintenance.py')
| -rw-r--r-- | addons/maintenance/tests/test_maintenance.py | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/addons/maintenance/tests/test_maintenance.py b/addons/maintenance/tests/test_maintenance.py index e4decedb583..e4acceb1767 100644 --- a/addons/maintenance/tests/test_maintenance.py +++ b/addons/maintenance/tests/test_maintenance.py @@ -36,12 +36,17 @@ class TestEquipment(TransactionCase): groups_id=[(6, 0, [res_manager.id])] )) + self.equipment_monitor = self.env['maintenance.equipment.category'].create({ + 'name': 'Monitors', + 'alias_id': self.env.ref('maintenance.mail_alias_equipment').id, + }) + def test_10_equipment_request_category(self): # Create a new equipment equipment_01 = self.equipment.with_user(self.manager).create({ 'name': 'Samsung Monitor "15', - 'category_id': self.ref('maintenance.equipment_monitor'), + 'category_id': self.equipment_monitor.id, 'technician_user_id': self.ref('base.user_root'), 'owner_user_id': self.user.id, 'assign_date': time.strftime('%Y-%m-%d'), @@ -80,7 +85,7 @@ class TestEquipment(TransactionCase): """ Check the cron creates the necessary preventive maintenance requests""" equipment_cron = self.equipment.create({ 'name': 'High Maintenance Monitor because of Color Calibration', - 'category_id': self.ref('maintenance.equipment_monitor'), + 'category_id': self.equipment_monitor.id, 'technician_user_id': self.ref('base.user_root'), 'owner_user_id': self.user.id, 'assign_date': time.strftime('%Y-%m-%d'), @@ -113,7 +118,7 @@ class TestEquipment(TransactionCase): }) equipment = self.equipment.create({ 'name': 'High Maintenance Monitor because of Color Calibration', - 'category_id': self.ref('maintenance.equipment_monitor'), + 'category_id': self.equipment_monitor.id, 'technician_user_id': self.ref('base.user_root'), 'owner_user_id': self.user.id, 'assign_date': time.strftime('%Y-%m-%d'), |
