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/account_check_printing/tests/test_print_check.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/account_check_printing/tests/test_print_check.py')
| -rw-r--r-- | addons/account_check_printing/tests/test_print_check.py | 25 |
1 files changed, 13 insertions, 12 deletions
diff --git a/addons/account_check_printing/tests/test_print_check.py b/addons/account_check_printing/tests/test_print_check.py index 7eecaaa8c42..1b96aeab236 100644 --- a/addons/account_check_printing/tests/test_print_check.py +++ b/addons/account_check_printing/tests/test_print_check.py @@ -13,22 +13,23 @@ import math @tagged('post_install', '-at_install') class TestPrintCheck(AccountingTestCase): - def setUp(self): - super(TestPrintCheck, self).setUp() + @classmethod + def setUpClass(cls): + super(TestPrintCheck, cls).setUpClass() - self.invoice_model = self.env['account.move'] - self.invoice_line_model = self.env['account.move.line'] - self.payment_model = self.env['account.payment'] + cls.invoice_model = cls.env['account.move'] + cls.invoice_line_model = cls.env['account.move.line'] + cls.payment_model = cls.env['account.payment'] - self.partner_axelor = self.env.ref("base.res_partner_2") - self.product = self.env.ref("product.product_product_4") - self.payment_method_check = self.env.ref("account_check_printing.account_payment_method_check") + cls.partner_axelor = cls.env['res.partner'].create({'name': 'A Partner'}) + cls.product = cls.env['product.product'].create({'name': 'A test Product'}) + cls.payment_method_check = cls.env.ref("account_check_printing.account_payment_method_check") - self.account_payable = self.env['account.account'].search([('user_type_id', '=', self.env.ref('account.data_account_type_payable').id)], limit=1) - self.account_expenses = self.env['account.account'].search([('user_type_id', '=', self.env.ref('account.data_account_type_expenses').id)], limit=1) + cls.account_payable = cls.env['account.account'].search([('user_type_id', '=', cls.env.ref('account.data_account_type_payable').id)], limit=1) + cls.account_expenses = cls.env['account.account'].search([('user_type_id', '=', cls.env.ref('account.data_account_type_expenses').id)], limit=1) - self.bank_journal = self.env['account.journal'].create({'name': 'Bank', 'type': 'bank', 'code': 'BNK67'}) - self.bank_journal.check_manual_sequencing = True + cls.bank_journal = cls.env['account.journal'].create({'name': 'Bank', 'type': 'bank', 'code': 'BNK67'}) + cls.bank_journal.check_manual_sequencing = True def create_invoice(self, amount=100, is_refund=False): invoice = self.env['account.move'].with_context(default_type=is_refund and 'out_refund' or 'in_invoice').create({ |
