diff --git a/foerderbarometer/settings.py b/foerderbarometer/settings.py
index 4354ec7..a8a27c7 100644
--- a/foerderbarometer/settings.py
+++ b/foerderbarometer/settings.py
@@ -148,6 +148,8 @@ OAUTH_URL_WHITELISTS = ['/admin']
OAUTH_COOKIE_SESSION_ID = 'sso_session_id'
+INTERN_VIEW_ENABLED = env('INTERN_VIEW_ENABLED', False)
+
IF_EMAIL = env('IF_EMAIL', 'community@wikimedia.de')
SURVEY_EMAIL = env('SURVEY_EMAIL', 'sandro.halank@wikimedia.de')
diff --git a/input/tests/__init__.py b/input/tests/__init__.py
index cb7cb1b..4e86ec4 100755
--- a/input/tests/__init__.py
+++ b/input/tests/__init__.py
@@ -1,4 +1,5 @@
from datetime import date
+from unittest import skipUnless
from django.test import TestCase, Client
from django.conf import settings
@@ -32,6 +33,7 @@ class TestWithoutLogin(TestCase):
#print (response.content)
self.assertContains(response,'Sourcecode')
+ @skipUnless(settings.INTERN_VIEW_ENABLED, 'Intern view is disabled.')
def test_access_denied(self):
'''test if /intern redirects to login page if not logged in'''
response = self.client.get('/intern', follow=True)
@@ -96,6 +98,7 @@ class TestWithLogin(TestCase):
self.client = Client()
self.user = User.objects.create_user('vladimir', 'vladimir@reiherzehe.com', 'reiherzehe')
+ @skipUnless(settings.INTERN_VIEW_ENABLED, 'Intern view is disabled.')
def test_access(self):
'''test if /intern gives an answer'''
self.assertEqual(self.client.login(username='testuser', password='testpasswd'), True)
diff --git a/input/urls.py b/input/urls.py
index 28ec03a..948aa2e 100755
--- a/input/urls.py
+++ b/input/urls.py
@@ -1,14 +1,18 @@
-from django.urls import path
-from .views import ExternView, index, done, authorize, deny, InternView, export
+from django.conf import settings
from django.contrib import admin
+from django.urls import path
+
+from .views import ExternView, index, done, authorize, deny, InternView, export
urlpatterns = [
path('', index, name='index'),
path('extern', ExternView.as_view(), name='extern'),
-# path('intern', InternView.as_view(), name='intern'),
path('admin/', admin.site.urls),
path('saved', done, name='done'),
path('export', export, name='export'),
path('authorize//', authorize, name='authorize'),
path('deny//', deny, name='deny'),
]
+
+if settings.INTERN_VIEW_ENABLED: # pragma: no cover
+ urlpatterns.insert(2, path('intern', InternView.as_view(), name='intern'))
diff --git a/input/views.py b/input/views.py
index 3d7c33d..2be7384 100755
--- a/input/views.py
+++ b/input/views.py
@@ -73,7 +73,7 @@ def done(request):
def index(request):
return render(request, 'input/index.html')
-class InternView(LoginRequiredMixin, CookieWizardView):
+class InternView(LoginRequiredMixin, CookieWizardView): # pragma: no cover
'''This View is for WMDE-employees only'''
template_name = 'input/extern.html'