Skip to content
Snippets Groups Projects
Commit 76b214f2 authored by Benjami's avatar Benjami
Browse files

Tested reate_energy_community_base_user and add_energy_community_role :white_check_mark:

* Changed params order from add_energy_community_role :sparkles:
* create_energy_community_base_user is ready :sparkles:
parent 4762d105
No related branches found
No related tags found
No related merge requests found
This commit is part of merge request !142. Comments created here will be created in the context of that merge request.
......@@ -279,7 +279,7 @@ class ResUsers(models.Model):
for child_company in child_companies:
self.make_ce_user(company_id, "role_ce_admin") # TODO: New super-role!
def add_energy_community_role(self, role_name, company_id):
def add_energy_community_role(self, company_id, role_name):
if role_name == 'role_ce_member' or role_name == 'role_ce_admin':
self.make_ce_user(company_id, role_name)
elif role_name == 'role_coordination' or role_name == 'role_coordination': # TODO: Change role name and New super-role!
......@@ -290,21 +290,19 @@ class ResUsers(models.Model):
)
def create_energy_community_base_user(
cls, vat, first_name, last_name, lang_code, email, company_id
cls, vat, first_name, last_name, lang_code, email
):
vals = {
"login": vat,
"firstname": first_name,
"lastname": last_name,
# "company_id": company_id, # TODO: Move!
# "company_ids": [(6, 0, [company_id])], # TODO: Move!
"lang": lang_code,
"email": email,
}
user = cls.create(vals)
user.make_internal_user()
# user.create_users_on_keycloak() # TEMPORAL
# user.send_reset_password_mail() # TEMPORAL
user.create_users_on_keycloak()
user.send_reset_password_mail()
return user
# Add faker into requirements.txt ?? 🤔
from faker import Faker
from mock import patch
from odoo.tests import common
from odoo.exceptions import UserError
......@@ -65,17 +66,37 @@ class TestResUsers(common.TransactionCase):
"role_id": self.internal_role.id,
})
def test__create_energy_community_base_user__base_case(self):
# Patch is required 🌞
pass
@patch("odoo.addons.energy_communities.models.res_users.ResUsers.create_users_on_keycloak")
@patch("odoo.addons.energy_communities.models.res_users.ResUsers.send_reset_password_mail")
def test__create_energy_community_base_user__base_case(
self, reset_password_mocked, create_kc_user_mocked
):
user = self.users_model.create_energy_community_base_user(
vat=faker.vat_id(),
first_name="Tom",
last_name="Bombadil",
lang_code="en_US",
email=faker.email(),
)
# then send_reset_password_mail function was called once time
reset_password_mocked.assert_called_once()
# then create_users_on_keycloak function was called once time
create_kc_user_mocked.assert_called_once()
@patch("odoo.addons.energy_communities.models.res_users.ResUsers.make_ce_user")
def test__add_energy_community_role__make_ce_user(self, make_ce_user_mocked):
self.random_user.add_energy_community_role(self.community.id, 'role_ce_admin')
# then make_ce_user_mocked function was called once time
make_ce_user_mocked.assert_called_with(self.community.id, 'role_ce_admin')
def test__add_energy_community_role__make_ce_user(self):
# Patch is required 🌞
pass
@patch("odoo.addons.energy_communities.models.res_users.ResUsers.make_coord_user")
def test__add_energy_community_role__make_coord_user(self, make_coord_user_mocked):
self.random_user.add_energy_community_role(self.coordination.id, 'role_coordination') # TODO: Rename in other branch ❗️❗️
def test__add_energy_community_role__make_coord_user(self):
# Patch is required 🌞
pass
# then make_coord_user function was called once time
make_coord_user_mocked.assert_called_with(self.coordination.id, 'role_coordination')
def test__add_energy_community_role__role_not_found(self):
with self.assertRaises(UserError):
......
......@@ -52,6 +52,6 @@ class AssignAdminWizard(models.TransientModel):
else:
user = self.env['res.users'].search([('login', '=', self.vat)])
user.add_energy_community_role(self.role, company_id)
user.add_energy_community_role(company_id, self.role)
return True
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