diff --git a/analyticsdataserver/tests/test_urls.py b/analyticsdataserver/tests/test_urls.py new file mode 100644 index 00000000..424c0f3f --- /dev/null +++ b/analyticsdataserver/tests/test_urls.py @@ -0,0 +1,12 @@ +from django.test import TestCase +from django.urls import reverse + + +class UrlConfigurationTests(TestCase): + def test_admin_url_is_exposed(self): + self.assertEqual(reverse('admin:index'), '/admin/') + + def test_admin_requires_authentication(self): + response = self.client.get(reverse('admin:index')) + + self.assertRedirects(response, '/admin/login/?next=/admin/') diff --git a/analyticsdataserver/urls.py b/analyticsdataserver/urls.py index df0d3f45..7910e327 100644 --- a/analyticsdataserver/urls.py +++ b/analyticsdataserver/urls.py @@ -1,5 +1,5 @@ from django.contrib import admin -from django.urls import include, re_path +from django.urls import include, path, re_path from django.views.generic import RedirectView from edx_api_doc_tools import make_api_info, make_docs_ui_view from rest_framework.authtoken.views import obtain_auth_token @@ -31,6 +31,7 @@ ) urlpatterns += [ + path('admin/', admin.site.urls), re_path(r'^docs/$', api_ui_view, name='api-docs'), re_path(r'^$', RedirectView.as_view(url='/docs')), # pylint: disable=no-value-for-parameter ]