Skip to content
Snippets Groups Projects
Commit 3b942a13 authored by Benjami's avatar Benjami Committed by konykon
Browse files

Test: Move helpers methods inside Mixins in helper file and create new tests...

Test: Move helpers methods inside Mixins in helper file and create new tests for assign_admin_wizard
parent 3ce4b1a6
No related branches found
No related tags found
3 merge requests!239Draft: [REL] energy_communities: dependency energy_selfconsumption bump to,!227[REL] Release 16/10/23,!142Feature/assign ce admin
from . import test_res_company
from . import test_res_users
from . import test_assign_admin_wizard
from faker import Faker
faker = Faker(locale='es_ES')
class CompanySetupMixin(object):
def create_company(self, name, hierarchy_level, parent_id):
return self.company_model.create({
'name': name,
'hierarchy_level': hierarchy_level,
'parent_id': parent_id,
})
class UserSetupMixin(object):
def create_user(self, firstname, lastname, vat=False, email=False):
return self.users_model.create({
"login": vat if vat else faker.vat_id(),
"firstname": firstname,
"lastname": lastname,
"email": email if email else faker.email(),
})
def make_community_admin(self, community_admin):
community_admin.write({"company_ids": [(4, self.community.id)]})
self.admin_role = self.env["res.users.role"].search([(
"code", "=", 'role_ce_admin'
)])
self.role_line_model.create({
"user_id": community_admin.id,
"active": True,
"role_id": self.admin_role.id,
"company_id": self.community.id,
})
self.internal_role = self.env["res.users.role"].search([(
"code", "=", "role_internal_user"
)])
self.role_line_model.create({
"user_id": community_admin.id,
"active": True,
"role_id": self.internal_role.id,
})
def make_coord_admin(self, coord_admin):
coord_admin.write({"company_ids": [(4, self.coordination.id)]})
coord_admin.write({"company_ids": [(4, self.community.id)]})
coord_admin_role = self.env["res.users.role"].search([(
"code", "=", 'role_coord_admin'
)])
self.role_line_model.create({
"user_id": coord_admin.id,
"active": True,
"role_id": coord_admin_role.id,
"company_id": self.community.id,
})
self.ce_manager_role = self.env["res.users.role"].search([(
"code", "=", 'role_ce_manager'
)])
self.role_line_model.create({
"user_id": coord_admin.id,
"active": True,
"role_id": self.ce_manager_role.id,
"company_id": self.community.id,
})
self.internal_role = self.env["res.users.role"].search([(
"code", "=", "role_internal_user"
)])
self.role_line_model.create({
"user_id": coord_admin.id,
"active": True,
"role_id": self.internal_role.id,
})
from faker import Faker
from mock import patch
from odoo.tests import common
from odoo.exceptions import ValidationError
from .helpers import UserSetupMixin
faker = Faker(locale='es_ES')
class TestAssingAdminWizard(UserSetupMixin, common.TransactionCase):
def setUp(self):
super().setUp()
self.users_model = self.env['res.users']
self.company_model = self.env['res.company']
self.random_user = self.create_user("Brandom", "Random", '43217763G')
@patch("odoo.addons.energy_communities.models.res_users.ResUsers.add_energy_community_role")
def test__process_data__search_user_case_insensitive(self, add_energy_community_role_mocked):
wizard = self.env['assign.admin.wizard'].create({
'is_new_admin': False,
'vat': '43217763g',
})
wizard.process_data()
add_energy_community_role_mocked.assert_called_once()
def test__process_data__user_not_found(self):
# When we search a new user
wizard = self.env['assign.admin.wizard'].create({
'is_new_admin': False,
'vat': '43217761g',
})
# Raises User not found error
with self.assertRaises(ValidationError):
wizard.process_data()
......@@ -3,76 +3,12 @@ from faker import Faker
from mock import patch
from odoo.tests import common
from odoo.exceptions import UserError, ValidationError
from .helpers import CompanySetupMixin, UserSetupMixin
faker = Faker(locale='es_ES')
class TestResUsers(common.TransactionCase):
def create_company(self, name, hierarchy_level, parent_id):
return self.company_model.create({
'name': name,
'hierarchy_level': hierarchy_level,
'parent_id': parent_id,
})
def create_user(self, firstname, lastname):
return self.users_model.create({
"login": faker.vat_id(),
"firstname": firstname,
"lastname": lastname,
"email": faker.email(),
})
def make_community_admin(self, community_admin):
community_admin.write({"company_ids": [(4, self.community.id)]})
self.admin_role = self.env["res.users.role"].search([(
"code", "=", 'role_ce_admin'
)])
self.role_line_model.create({
"user_id": community_admin.id,
"active": True,
"role_id": self.admin_role.id,
"company_id": self.community.id,
})
self.internal_role = self.env["res.users.role"].search([(
"code", "=", "role_internal_user"
)])
self.role_line_model.create({
"user_id": community_admin.id,
"active": True,
"role_id": self.internal_role.id,
})
def make_coord_admin(self, coord_admin):
coord_admin.write({"company_ids": [(4, self.coordination.id)]})
coord_admin.write({"company_ids": [(4, self.community.id)]})
coord_admin_role = self.env["res.users.role"].search([(
"code", "=", 'role_coord_admin'
)])
self.role_line_model.create({
"user_id": coord_admin.id,
"active": True,
"role_id": coord_admin_role.id,
"company_id": self.community.id,
})
self.ce_manager_role = self.env["res.users.role"].search([(
"code", "=", 'role_ce_manager'
)])
self.role_line_model.create({
"user_id": coord_admin.id,
"active": True,
"role_id": self.ce_manager_role.id,
"company_id": self.community.id,
})
self.internal_role = self.env["res.users.role"].search([(
"code", "=", "role_internal_user"
)])
self.role_line_model.create({
"user_id": coord_admin.id,
"active": True,
"role_id": self.internal_role.id,
})
class TestResUsers(CompanySetupMixin, UserSetupMixin, common.TransactionCase):
def setUp(self):
super().setUp()
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment