summaryrefslogtreecommitdiff
path: root/tests/test_integration.py
diff options
context:
space:
mode:
Diffstat (limited to 'tests/test_integration.py')
-rw-r--r--tests/test_integration.py42
1 files changed, 42 insertions, 0 deletions
diff --git a/tests/test_integration.py b/tests/test_integration.py
index 72465dc93..331542d7d 100644
--- a/tests/test_integration.py
+++ b/tests/test_integration.py
@@ -521,6 +521,48 @@ class TestExceptionViewsApp(IntegrationBase, unittest.TestCase):
self.assertTrue(b'caught' in res.body)
+class TestSecurityApp(IntegrationBase, unittest.TestCase):
+ package = 'tests.pkgs.securityapp'
+
+ def test_public(self):
+ res = self.testapp.get('/public', status=200)
+ self.assertEqual(res.body, b'Hello')
+
+ def test_private_denied(self):
+ self.testapp.get('/private', status=403)
+
+ def test_private_allowed(self):
+ self.testapp.extra_environ = {'REMOTE_USER': 'bob'}
+ res = self.testapp.get('/private', status=200)
+ self.assertEqual(res.body, b'Secret')
+
+ def test_inaccessible(self):
+ self.testapp.get('/inaccessible', status=403)
+ self.testapp.extra_environ = {'REMOTE_USER': 'bob'}
+ self.testapp.get('/inaccessible', status=403)
+
+
+class TestLegacySecurityApp(IntegrationBase, unittest.TestCase):
+ package = 'tests.pkgs.legacysecurityapp'
+
+ def test_public(self):
+ res = self.testapp.get('/public', status=200)
+ self.assertEqual(res.body, b'Hello')
+
+ def test_private_denied(self):
+ self.testapp.get('/private', status=403)
+
+ def test_private_allowed(self):
+ self.testapp.extra_environ = {'REMOTE_USER': 'bob'}
+ res = self.testapp.get('/private', status=200)
+ self.assertEqual(res.body, b'Secret')
+
+ def test_inaccessible(self):
+ self.testapp.get('/inaccessible', status=403)
+ self.testapp.extra_environ = {'REMOTE_USER': 'bob'}
+ self.testapp.get('/inaccessible', status=403)
+
+
class TestConflictApp(unittest.TestCase):
package = 'tests.pkgs.conflictapp'