diff options
| author | stephanchrst <stephanchrst@gmail.com> | 2022-05-10 21:51:50 +0700 |
|---|---|---|
| committer | stephanchrst <stephanchrst@gmail.com> | 2022-05-10 21:51:50 +0700 |
| commit | 3751379f1e9a4c215fb6eb898b4ccc67659b9ace (patch) | |
| tree | a44932296ef4a9b71d5f010906253d8c53727726 /addons/hr_expense/tests/common.py | |
| parent | 0a15094050bfde69a06d6eff798e9a8ddf2b8c21 (diff) | |
initial commit 2
Diffstat (limited to 'addons/hr_expense/tests/common.py')
| -rw-r--r-- | addons/hr_expense/tests/common.py | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/addons/hr_expense/tests/common.py b/addons/hr_expense/tests/common.py new file mode 100644 index 00000000..406f8b14 --- /dev/null +++ b/addons/hr_expense/tests/common.py @@ -0,0 +1,54 @@ +# -*- coding: utf-8 -*- +# Part of Odoo. See LICENSE file for full copyright and licensing details. + +from odoo.addons.account.tests.common import AccountTestInvoicingCommon +from odoo.addons.mail.tests.common import mail_new_test_user + + +class TestExpenseCommon(AccountTestInvoicingCommon): + + @classmethod + def setUpClass(cls, chart_template_ref=None): + super().setUpClass(chart_template_ref=chart_template_ref) + + group_expense_manager = cls.env.ref('hr_expense.group_hr_expense_manager') + + cls.expense_user_employee = mail_new_test_user( + cls.env, + name='expense_user_employee', + login='expense_user_employee', + email='expense_user_employee@example.com', + notification_type='email', + groups='base.group_user', + company_ids=[(6, 0, cls.env.companies.ids)], + ) + cls.expense_user_manager = mail_new_test_user( + cls.env, + name='Expense manager', + login='expense_manager_1', + email='expense_manager_1@example.com', + notification_type='email', + groups='base.group_user,hr_expense.group_hr_expense_manager', + company_ids=[(6, 0, cls.env.companies.ids)], + ) + + cls.expense_employee = cls.env['hr.employee'].create({ + 'name': 'expense_employee', + 'user_id': cls.expense_user_employee.id, + 'address_home_id': cls.expense_user_employee.partner_id.id, + 'address_id': cls.expense_user_employee.partner_id.id, + }) + + # Allow the current accounting user to access the expenses. + cls.env.user.groups_id |= group_expense_manager + + # Create analytic account + cls.analytic_account_1 = cls.env['account.analytic.account'].create({ + 'name': 'analytic_account_1', + }) + cls.analytic_account_2 = cls.env['account.analytic.account'].create({ + 'name': 'analytic_account_2', + }) + + # Ensure products can be expensed. + (cls.product_a + cls.product_b).write({'can_be_expensed': True}) |
