This is an automated email from the ASF dual-hosted git repository. machristie pushed a commit to branch develop in repository https://gitbox.apache.org/repos/asf/airavata-django-portal.git
commit d12ad44a0d1f5615882429d86b5eb9134c20ce83 Author: Marcus Christie <[email protected]> AuthorDate: Thu Oct 20 18:23:49 2022 -0400 AIRAVATA-3647 Unit test for handling unauthenticated REST error responses --- django_airavata/apps/api/tests/test_views.py | 23 +++++++++++++++++++++++ tests/settings.py | 5 ++++- 2 files changed, 27 insertions(+), 1 deletion(-) diff --git a/django_airavata/apps/api/tests/test_views.py b/django_airavata/apps/api/tests/test_views.py index 22d30e79..201538dc 100644 --- a/django_airavata/apps/api/tests/test_views.py +++ b/django_airavata/apps/api/tests/test_views.py @@ -468,3 +468,26 @@ class IAMUserViewSetTests(TestCase): group_manager_mock.getGroup.assert_not_called() group_manager_mock.addUsersToGroup.assert_not_called() user_added_to_group_handler.assert_not_called() + + +@override_settings( + GATEWAY_ID=GATEWAY_ID, + PORTAL_ADMINS=PORTAL_ADMINS +) +class ExceptionHandlingTest(TestCase): + + def setUp(self): + self.user = User.objects.create_user('testuser') + self.factory = APIRequestFactory() + + def test_unauthenticated_request(self): + + url = reverse('django_airavata_api:group-list') + data = {} + request = self.factory.post(url, data) + # Deliberately not authenticating user for request + group_create = views.GroupViewSet.as_view({'post': 'create'}) + response = group_create(request) + self.assertEquals(403, response.status_code) + self.assertIn('is_authenticated', response.data) + self.assertFalse(response.data['is_authenticated']) diff --git a/tests/settings.py b/tests/settings.py index 7bc12f00..e65a3bcd 100644 --- a/tests/settings.py +++ b/tests/settings.py @@ -10,7 +10,10 @@ BASEDIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) DATABASES = { 'default': { 'ENGINE': 'django.db.backends.sqlite3', - 'NAME': os.path.join(BASEDIR, 'db.sqlite3'), + 'TEST': { + 'ENGINE': 'django.db.backends.sqlite3', + 'NAME': os.path.join(BASEDIR, 'test-db.sqlite3'), + } } }
