summary refs log tree commit diff
diff options
context:
space:
mode:
authorRichard van der Hoff <richard@matrix.org>2018-11-14 10:44:46 +0000
committerRichard van der Hoff <richard@matrix.org>2018-11-14 10:46:27 +0000
commitc1efcd7c6a155cb6732428173f7e78df2ab4321d (patch)
tree99704e0f216df70620065bf73c257c20135249d2
parentFix an internal server error when viewing the public privacy policy (diff)
downloadsynapse-c1efcd7c6a155cb6732428173f7e78df2ab4321d.tar.xz
Add a test for the public T&Cs form
-rw-r--r--synapse/rest/consent/consent_resource.py2
-rw-r--r--tests/rest/client/test_consent.py7
2 files changed, 8 insertions, 1 deletions
diff --git a/synapse/rest/consent/consent_resource.py b/synapse/rest/consent/consent_resource.py
index 53d5fab914..ad525b22e1 100644
--- a/synapse/rest/consent/consent_resource.py
+++ b/synapse/rest/consent/consent_resource.py
@@ -142,7 +142,7 @@ class ConsentResource(Resource):
         userhmac = None
         has_consented = False
         public_version = username == ""
-        if not public_version or not self.hs.config.user_consent_at_registration:
+        if not public_version:
             userhmac_bytes = parse_string(request, "h", required=True, encoding=None)
 
             self._check_hash(username, userhmac_bytes)
diff --git a/tests/rest/client/test_consent.py b/tests/rest/client/test_consent.py
index df3f1cde6e..4294bbec2a 100644
--- a/tests/rest/client/test_consent.py
+++ b/tests/rest/client/test_consent.py
@@ -60,6 +60,13 @@ class ConsentResourceTestCase(unittest.HomeserverTestCase):
         hs = self.setup_test_homeserver(config=config)
         return hs
 
+    def test_render_public_consent(self):
+        """You can observe the terms form without specifying a user"""
+        resource = consent_resource.ConsentResource(self.hs)
+        request, channel = self.make_request("GET", "/consent?v=1", shorthand=False)
+        render(request, resource, self.reactor)
+        self.assertEqual(channel.code, 200)
+
     def test_accept_consent(self):
         """
         A user can use the consent form to accept the terms.