summaryrefslogtreecommitdiff
path: root/addons/sales_team/tests/common.py
diff options
context:
space:
mode:
authorstephanchrst <stephanchrst@gmail.com>2022-05-10 21:51:50 +0700
committerstephanchrst <stephanchrst@gmail.com>2022-05-10 21:51:50 +0700
commit3751379f1e9a4c215fb6eb898b4ccc67659b9ace (patch)
treea44932296ef4a9b71d5f010906253d8c53727726 /addons/sales_team/tests/common.py
parent0a15094050bfde69a06d6eff798e9a8ddf2b8c21 (diff)
initial commit 2
Diffstat (limited to 'addons/sales_team/tests/common.py')
-rw-r--r--addons/sales_team/tests/common.py78
1 files changed, 78 insertions, 0 deletions
diff --git a/addons/sales_team/tests/common.py b/addons/sales_team/tests/common.py
new file mode 100644
index 00000000..8c379547
--- /dev/null
+++ b/addons/sales_team/tests/common.py
@@ -0,0 +1,78 @@
+# -*- coding: utf-8 -*-
+# Part of Odoo. See LICENSE file for full copyright and licensing details.
+
+from odoo.addons.mail.tests.common import mail_new_test_user
+from odoo.tests.common import SavepointCase
+
+
+class TestSalesCommon(SavepointCase):
+
+ @classmethod
+ def setUpClass(cls):
+ super(TestSalesCommon, cls).setUpClass()
+
+ # Salesmen organization
+ # ------------------------------------------------------------
+ # Role: M (team member) R (team manager)
+ # SALESMAN---------------sales_team_1
+ # admin------------------M-----------
+ # user_sales_manager-----R-----------
+ # user_sales_leads-------M-----------
+ # user_sales_salesman----/-----------
+
+ # Sales teams organization
+ # ------------------------------------------------------------
+ # SALESTEAM-----------SEQU-----COMPANY
+ # sales_team_1--------5--------False
+ # data----------------9999-----??
+
+ cls.company_main = cls.env.user.company_id
+ cls.user_sales_manager = mail_new_test_user(
+ cls.env, login='user_sales_manager',
+ name='Martin Sales Manager', email='crm_manager@test.example.com',
+ company_id=cls.company_main.id,
+ notification_type='inbox',
+ groups='sales_team.group_sale_manager,base.group_partner_manager',
+ )
+ cls.user_sales_leads = mail_new_test_user(
+ cls.env, login='user_sales_leads',
+ name='Laetitia Sales Leads', email='crm_leads@test.example.com',
+ company_id=cls.company_main.id,
+ notification_type='inbox',
+ groups='sales_team.group_sale_salesman_all_leads,base.group_partner_manager',
+ )
+ cls.user_sales_salesman = mail_new_test_user(
+ cls.env, login='user_sales_salesman',
+ name='Orteil Sales Own', email='crm_salesman@test.example.com',
+ company_id=cls.company_main.id,
+ notification_type='inbox',
+ groups='sales_team.group_sale_salesman',
+ )
+ cls.user_admin = cls.env.ref('base.user_admin')
+
+ cls.env['crm.team'].search([]).write({'sequence': 9999})
+ cls.sales_team_1 = cls.env['crm.team'].create({
+ 'name': 'Test Sales Team',
+ 'sequence': 5,
+ 'company_id': False,
+ 'user_id': cls.user_sales_manager.id,
+ 'member_ids': [(4, cls.user_sales_leads.id), (4, cls.user_admin.id)],
+ })
+
+
+class TestSalesMC(TestSalesCommon):
+ """ Multi Company / Multi Sales Team environment """
+
+ @classmethod
+ def setUpClass(cls):
+ super(TestSalesMC, cls).setUpClass()
+ cls.company_2 = cls.env['res.company'].create({
+ 'name': 'New Test Company',
+ 'email': 'company.2@test.example.com',
+ 'country_id': cls.env.ref('base.fr').id,
+ })
+ cls.team_c2 = cls.env['crm.team'].create({
+ 'name': 'C2 Team1',
+ 'sequence': 1,
+ 'company_id': cls.company_2.id,
+ })