summaryrefslogtreecommitdiff
path: root/service/test/unit/resources/test_login_resource.py
diff options
context:
space:
mode:
authorNavaL <ayoyo@thoughtworks.com>2016-02-11 09:43:40 +0100
committerNavaL <ayoyo@thoughtworks.com>2016-02-11 09:47:27 +0100
commita1395e944e94964d4da69cd744330a099f0c6dd4 (patch)
treeeb673e17bbd0f6aa0922777273c523da1f1804ce /service/test/unit/resources/test_login_resource.py
parentd8842e7e7ad415045bf230bc52efa90d3e717099 (diff)
adds argument to supply custom disclaimer/banner on login screen
Issue #598
Diffstat (limited to 'service/test/unit/resources/test_login_resource.py')
-rw-r--r--service/test/unit/resources/test_login_resource.py31
1 files changed, 31 insertions, 0 deletions
diff --git a/service/test/unit/resources/test_login_resource.py b/service/test/unit/resources/test_login_resource.py
index bc238ae8..3cd9d3b2 100644
--- a/service/test/unit/resources/test_login_resource.py
+++ b/service/test/unit/resources/test_login_resource.py
@@ -1,3 +1,5 @@
+import os
+
import test.support.mockito
from leap.exceptions import SRPAuthenticationError
@@ -58,16 +60,45 @@ class TestLoginResource(unittest.TestCase):
input_username = 'name="username"'
input_password = 'name="password"'
input_submit = 'name="login"'
+ default_disclaimer = 'Some disclaimer'
written_response = ''.join(request.written)
self.assertIn(form_action, written_response)
self.assertIn(form_method, written_response)
self.assertIn(input_password, written_response)
self.assertIn(input_submit, written_response)
self.assertIn(input_username, written_response)
+ self.assertIn(default_disclaimer, written_response)
d.addCallback(assert_form_rendered)
return d
+ def _write(self, filename, content):
+ with open(filename, 'w') as disclaimer_file:
+ disclaimer_file.write(content)
+
+ def test_override_login_disclaimer_message(self):
+ request = DummyRequest([''])
+
+ banner_file_name = 'banner.txt'
+ banner_disclaimer_content = '<p>some custom disclaimer</p>'
+ self._write(banner_file_name, banner_disclaimer_content)
+
+ self.resource._disclaimer_banner = 'service/_trial_temp/' + banner_file_name
+
+ d = self.web.get(request)
+
+ def assert_custom_disclaimer_rendered(_):
+ self.assertEqual(200, request.responseCode)
+ written_response = ''.join(request.written)
+ self.assertIn(banner_disclaimer_content, written_response)
+
+ def tear_down(_):
+ os.remove(banner_file_name)
+
+ d.addCallback(assert_custom_disclaimer_rendered)
+ d.addCallback(tear_down)
+ return d
+
class TestLoginPOST(unittest.TestCase):
def setUp(self):