diff options
Diffstat (limited to 'archaeological_context_records/tests.py')
-rw-r--r-- | archaeological_context_records/tests.py | 73 |
1 files changed, 52 insertions, 21 deletions
diff --git a/archaeological_context_records/tests.py b/archaeological_context_records/tests.py index efeab4670..8a16facf5 100644 --- a/archaeological_context_records/tests.py +++ b/archaeological_context_records/tests.py @@ -23,7 +23,7 @@ import locale from django.apps import apps from django.conf import settings -from django.contrib.auth.models import Permission +from django.contrib.auth.models import Permission, Group from django.core.exceptions import ValidationError from django.core.files.uploadedfile import SimpleUploadedFile from django.template.defaultfilters import slugify @@ -32,14 +32,15 @@ from django.urls import reverse from django.utils.translation import pgettext_lazy from ishtar_common.models import ( - IshtarSiteProfile, + Area, + get_current_profile, ImporterModel, ImporterType, - UserProfile, + IshtarSiteProfile, + IshtarUser, ProfileType, Town, - Area, - get_current_profile, + UserProfile, ) from ishtar_common import forms_common @@ -945,21 +946,35 @@ class ContextRecordPermissionTest(ContextRecordInit, TestCase): fixtures = CONTEXT_RECORD_TOWNS_FIXTURES def setUp(self): - IshtarSiteProfile.objects.create() - self.username, self.password, self.user = create_superuser() - self.alt_username, self.alt_password, self.alt_user = create_user() - self.alt_user.user_permissions.add( + profile_type = ProfileType.objects.create( + label="xxCollaborateur", + txt_idx="xxcollaborator", + ) + gp = Group.objects.create(name="xxUE rattachées : voir et modification") + gp.permissions.add( Permission.objects.get(codename="view_own_contextrecord") ) - self.alt_user.user_permissions.add( + gp.permissions.add( Permission.objects.get(codename="change_own_contextrecord") ) + profile_type.groups.add(gp) + + IshtarSiteProfile.objects.create() + self.username, self.password, self.user = create_superuser() + self.alt_username, self.alt_password, self.alt_user = create_user() + + UserProfile.objects.create( + profile_type=profile_type, + person=self.alt_user.ishtaruser.person, + current=True, + ) + # nosec: hard coded password for test purposes self.alt_username2, self.alt_password2, self.alt_user2 = create_user( # nosec username="luke", password="iamyourfather" ) profile = UserProfile.objects.create( - profile_type=ProfileType.objects.get(txt_idx="collaborator"), + profile_type=profile_type, person=self.alt_user2.ishtaruser.person, current=True, ) @@ -984,6 +999,9 @@ class ContextRecordPermissionTest(ContextRecordInit, TestCase): self.cr_1 = self.context_records[0] self.cr_2 = self.context_records[1] + self.alt_user.ishtaruser.generate_permission() + self.alt_user2.ishtaruser.generate_permission() + def test_own_search(self): # no result when no authentification c = Client() @@ -1390,29 +1408,42 @@ class ContextRecordRelationTest(ContextRecordInit, TestCase): fixtures = CONTEXT_RECORD_TOWNS_FIXTURES def setUp(self): - # nosec: hard coded password for test purposes - self.username, self.password, user = create_user( # nosec - username="Gandalf", password="ushallpass" + profile_type = ProfileType.objects.create( + label="xxCollaborateur", + txt_idx="xxcollaborator", ) - user.user_permissions.add( + gp = Group.objects.create(name="xxUE rattachées : voir et modification") + gp.permissions.add( Permission.objects.get(codename="view_own_contextrecord") ) - user.user_permissions.add( + gp.permissions.add( Permission.objects.get(codename="change_own_contextrecord") ) + profile_type.groups.add(gp) + + # nosec: hard coded password for test purposes + self.username, self.password, user = create_user( # nosec + username="Gandalf", password="ushallpass" + ) + UserProfile.objects.create( + profile_type=profile_type, + person=user.ishtaruser.person, + current=True, + ) self.create_context_record({"label": "CR 1"}, user=user) self.create_context_record({"label": "CR 2"}, user=user) self.create_context_record({"label": "CR 3"}, user=user) + IshtarUser.objects.get(pk=user.pk).generate_permission() self.username2, self.password2, user2 = create_user( # nosec username="Saroumane", password="ushallnotpass" ) - user2.user_permissions.add( - Permission.objects.get(codename="view_own_contextrecord") - ) - user2.user_permissions.add( - Permission.objects.get(codename="change_own_contextrecord") + UserProfile.objects.create( + profile_type=profile_type, + person=user2.ishtaruser.person, + current=True, ) + IshtarUser.objects.get(pk=user2.pk).generate_permission() self.cr1, self.cr2, self.cr3 = self.context_records self.sym_rel_type, __ = models.RelationType.objects.get_or_create( symmetrical=True, txt_idx="sym", logical_relation="equal" |