From 94e0023922c8a50dbdb75c8354b3c6cb61dc54b6 Mon Sep 17 00:00:00 2001
From: Tanner Prestegard <tanner.prestegard@ligo.org>
Date: Mon, 29 Oct 2018 13:49:52 -0500
Subject: [PATCH] Update unit test base class for unauthenticated tests

---
 gracedb/core/tests/utils.py | 11 ++++++++++-
 1 file changed, 10 insertions(+), 1 deletion(-)

diff --git a/gracedb/core/tests/utils.py b/gracedb/core/tests/utils.py
index 00d2483af..6c34b5d85 100644
--- a/gracedb/core/tests/utils.py
+++ b/gracedb/core/tests/utils.py
@@ -7,6 +7,7 @@ from django.contrib.auth import get_user_model
 from django.contrib.auth.models import Group, Permission
 from django.contrib.contenttypes.models import ContentType
 
+from guardian.conf import settings as guardian_settings
 from guardian.models import GroupObjectPermission, UserObjectPermission
 
 # Set up user model
@@ -258,7 +259,10 @@ class SignoffGroupsAndUsersSetup(TestCase):
 
 
 class PublicGroupSetup(TestCase):
-    """Base class which creates a public group"""
+    """
+    Base class which creates a public group and the guardian AnonymousUser,
+    and puts that user in the public group.
+    """
 
     @classmethod
     def setUpTestData(cls):
@@ -269,6 +273,11 @@ class PublicGroupSetup(TestCase):
         cls.public_group, _ = Group.objects.get_or_create(
             name=settings.PUBLIC_GROUP)
 
+        # Create guardian AnonymousUser and add to group
+        anonymous_user, _ = UserModel.objects.get_or_create(username=
+            guardian_settings.ANONYMOUS_USER_NAME)
+        cls.public_group.user_set.add(anonymous_user)
+
 
 class GraceDbTestBase(DefineTestSettings, InternalGroupAndUserSetup,
     LvemGroupAndUserSetup, PublicGroupSetup):
-- 
GitLab