From a94d0f0edb71dfe8004a120e645a25bc20eac6d6 Mon Sep 17 00:00:00 2001 From: Tore Brede <Tore.Brede@uib.no> Date: Fri, 12 Nov 2021 14:40:13 +0100 Subject: [PATCH] GREG-110: Fixing linting error and indentation --- gregui/api/serializers/guest.py | 2 +- gregui/api/views/invitation.py | 23 ++++++--- gregui/tests/api/test_invitation.py | 76 +++++++++++++++++++---------- 3 files changed, 67 insertions(+), 34 deletions(-) diff --git a/gregui/api/serializers/guest.py b/gregui/api/serializers/guest.py index 225ea44f..4836baf9 100644 --- a/gregui/api/serializers/guest.py +++ b/gregui/api/serializers/guest.py @@ -71,7 +71,7 @@ class GuestRegisterSerializer(serializers.ModelSerializer): def create_identity_or_update( - identity_type: Identity.IdentityType, value: str, person: Person + identity_type: Identity.IdentityType, value: str, person: Person ): existing_identity = person.identities.filter(type=identity_type).first() if not existing_identity: diff --git a/gregui/api/views/invitation.py b/gregui/api/views/invitation.py index db757d84..52e2e605 100644 --- a/gregui/api/views/invitation.py +++ b/gregui/api/views/invitation.py @@ -72,8 +72,8 @@ class InvitationView(CreateAPIView, DestroyAPIView): person = serializer.save() for invitationlink in InvitationLink.objects.filter( - invitation__role__person_id=person.id, - invitation__role__sponsor_id=sponsor_user.sponsor_id, + invitation__role__person_id=person.id, + invitation__role__sponsor_id=sponsor_user.sponsor_id, ): send_invite_mail(invitationlink) @@ -143,7 +143,14 @@ class InvitedGuestView(GenericAPIView): serializer_class = GuestRegisterSerializer # TODO Check these scenarios again. What should be allowed to be updated in the various coses - fields_allowed_to_update_if_invite = ["first_name", "last_name", "email", "fnr", "mobile_phone", "passport"] + fields_allowed_to_update_if_invite = [ + "first_name", + "last_name", + "email", + "fnr", + "mobile_phone", + "passport", + ] fields_allowed_to_update_if_feide = ["mobile_phone"] def get(self, request, *args, **kwargs): @@ -233,8 +240,12 @@ class InvitedGuestView(GenericAPIView): # If there is a Feide ID registered with the guest, assume that the name is also coming from there feide_id = self._get_identity_or_none(person, Identity.IdentityType.FEIDE_ID) - if not self._only_allowed_fields_in_request(data, - self.fields_allowed_to_update_if_invite if feide_id is None else self.fields_allowed_to_update_if_feide): + if not self._only_allowed_fields_in_request( + data, + self.fields_allowed_to_update_if_invite + if feide_id is None + else self.fields_allowed_to_update_if_feide, + ): return Response(status=status.HTTP_400_BAD_REQUEST) if self._verified_fnr_already_exists(person) and "fnr" in data: @@ -283,7 +294,7 @@ class InvitedGuestView(GenericAPIView): @staticmethod def _get_identity_or_none( - person: Person, identity_type: Identity.IdentityType + person: Person, identity_type: Identity.IdentityType ) -> Optional[str]: try: return person.identities.get(type=identity_type).value diff --git a/gregui/tests/api/test_invitation.py b/gregui/tests/api/test_invitation.py index 88f987e7..c6373880 100644 --- a/gregui/tests/api/test_invitation.py +++ b/gregui/tests/api/test_invitation.py @@ -40,7 +40,7 @@ def test_get_invited_info_no_session(client, invitation_link): @pytest.mark.django_db def test_get_invited_info_session_okay( - client, invited_person, sponsor_foo_data, role_type_foo, unit_foo + client, invited_person, sponsor_foo_data, role_type_foo, unit_foo ): person, invitation_link = invited_person # get a session @@ -75,7 +75,7 @@ def test_get_invited_info_session_okay( @pytest.mark.django_db def test_get_invited_info_expired_link( - client, invitation_link, invitation_expired_date + client, invitation_link, invitation_expired_date ): # Get a session while link is valid client.get(reverse("gregui-v1:invite-verify"), data={"uuid": invitation_link.uuid}) @@ -118,7 +118,7 @@ def test_invited_guest_can_post_information(client: APIClient, invited_person): @pytest.mark.django_db def test_post_invited_info_expired_session( - client, invitation_link, invitation_expired_date + client, invitation_link, invitation_expired_date ): # get a session client.post(reverse("gregui-v1:invite-verify"), data={"uuid": invitation_link.uuid}) @@ -230,10 +230,10 @@ def test_register_passport(client, invited_person): session.save() assert ( - Identity.objects.filter( - person__id=person.id, type=Identity.IdentityType.PASSPORT_NUMBER - ).count() - == 0 + Identity.objects.filter( + person__id=person.id, type=Identity.IdentityType.PASSPORT_NUMBER + ).count() + == 0 ) response = client.post(url, data, format="json") @@ -249,10 +249,17 @@ def test_register_passport(client, invited_person): @pytest.mark.django_db -def test_name_update_not_allowed_if_feide_identity_is_present(client: APIClient, person_foo, sponsor_foo, unit_foo, - role_type_foo, - create_role, create_invitation, create_invitation_link, - invitation_valid_date): +def test_name_update_not_allowed_if_feide_identity_is_present( + client: APIClient, + person_foo, + sponsor_foo, + unit_foo, + role_type_foo, + create_role, + create_invitation, + create_invitation_link, + invitation_valid_date, +): # This person has a Feide ID, so the name is assumed to come from there as well # and the guest should not be allowed to update it role = create_role( @@ -263,7 +270,13 @@ def test_name_update_not_allowed_if_feide_identity_is_present(client: APIClient, client.post(reverse("gregui-v1:invite-verify"), data={"uuid": invitation_link.uuid}) person = invitation_link.invitation.role.person - data = {"person": {"first_name": "Someone", "last_name": "Test", "mobile_phone": "+4797543992"}} + data = { + "person": { + "first_name": "Someone", + "last_name": "Test", + "mobile_phone": "+4797543992", + } + } # The update request should fail because it contains a name update response = client.post( @@ -280,27 +293,36 @@ def test_name_update_not_allowed_if_feide_identity_is_present(client: APIClient, @pytest.mark.django_db -def test_name_update_allowed_if_feide_identity_is_not_present(client: APIClient, create_person, sponsor_foo, unit_foo, - role_type_foo, - create_role, create_invitation, create_invitation_link, - invitation_valid_date): +def test_name_update_allowed_if_feide_identity_is_not_present( + client: APIClient, + create_person, + sponsor_foo, + unit_foo, + role_type_foo, + create_role, + create_invitation, + create_invitation_link, + invitation_valid_date, +): # This person does not have a Feide ID, so he will be viewed as someone whose name was entered manually # by the sponsor, and in it that case the guest can update it - person = create_person( - first_name="Foo", - last_name="Bar", - email="foo@bar.com") + person = create_person(first_name="Foo", last_name="Bar", email="foo@bar.com") role = create_role( person=person, sponsor=sponsor_foo, unit=unit_foo, role_type=role_type_foo ) - invitation = create_invitation(role) - invitation_link = create_invitation_link(invitation, invitation_valid_date) + invitation_link = create_invitation_link( + create_invitation(role), invitation_valid_date + ) client.post(reverse("gregui-v1:invite-verify"), data={"uuid": invitation_link.uuid}) person = invitation_link.invitation.role.person - first_name = "Someone" - last_name = "Test" - data = {"person": {"first_name": first_name, "last_name": last_name, "mobile_phone": "+4797543992"}} + data = { + "person": { + "first_name": "Someone", + "last_name": "Test", + "mobile_phone": "+4797543992", + } + } response = client.post( reverse("gregui-v1:invited-info"), @@ -312,5 +334,5 @@ def test_name_update_allowed_if_feide_identity_is_not_present(client: APIClient, # Check that the name has been updated in the database assert Person.objects.count() == 1 person.refresh_from_db() - assert person.first_name == first_name - assert person.last_name == last_name + assert person.first_name == "Someone" + assert person.last_name == "Test" -- GitLab