From 5f8e64140a183b227e8402ad84f1201a40dc6e64 Mon Sep 17 00:00:00 2001 From: Sean Engelhardt Date: Wed, 8 Jan 2020 10:46:11 +0100 Subject: [PATCH] Fix group creation Fixes an error that was preventing groups from being created. Groups did require a list of permissions which is now optional --- openslides/users/serializers.py | 4 +++- tests/integration/users/test_viewset.py | 12 ++++++++++++ 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/openslides/users/serializers.py b/openslides/users/serializers.py index 83ee192a7..7b82e2a29 100644 --- a/openslides/users/serializers.py +++ b/openslides/users/serializers.py @@ -159,7 +159,9 @@ class GroupSerializer(ModelSerializer): Serializer for django.contrib.auth.models.Group objects. """ - permissions = PermissionRelatedField(many=True, queryset=Permission.objects.all()) + permissions = PermissionRelatedField( + many=True, queryset=Permission.objects.all(), required=False + ) class Meta: model = Group diff --git a/tests/integration/users/test_viewset.py b/tests/integration/users/test_viewset.py index 38e16e6b1..668c46f01 100644 --- a/tests/integration/users/test_viewset.py +++ b/tests/integration/users/test_viewset.py @@ -705,6 +705,18 @@ class GroupCreate(TestCase): Tests creation of groups via REST API. """ + def test_creation_simple(self): + self.client.login(username="admin", password="admin") + + response = self.client.post( + reverse("group-list"), {"name": "Test name ldr59xq2mvt96rdayhju"}, + ) + + self.assertEqual(response.status_code, status.HTTP_201_CREATED) + self.assertTrue( + Group.objects.filter(name="Test name ldr59xq2mvt96rdayhju").exists() + ) + def test_creation(self): self.client.login(username="admin", password="admin") # This contains two valid permissions of the users app.