summary refs log tree commit diff
path: root/tests
diff options
context:
space:
mode:
Diffstat (limited to 'tests')
-rw-r--r--tests/rest/client/test_identity.py18
-rw-r--r--tests/rest/client/test_room_access_rules.py6
-rw-r--r--tests/rest/client/v2_alpha/test_register.py1
-rw-r--r--tests/rulecheck/test_domainrulecheck.py5
4 files changed, 26 insertions, 4 deletions
diff --git a/tests/rest/client/test_identity.py b/tests/rest/client/test_identity.py

index f81f81602e..a7f08a3f19 100644 --- a/tests/rest/client/test_identity.py +++ b/tests/rest/client/test_identity.py
@@ -20,6 +20,7 @@ from mock import Mock from twisted.internet import defer import synapse.rest.admin +from synapse.api.errors import HttpResponseException from synapse.rest.client.v1 import login, room from synapse.rest.client.v2_alpha import account @@ -109,8 +110,15 @@ class IdentityEnabledTestCase(unittest.HomeserverTestCase): config["enable_3pid_lookup"] = True config["trusted_third_party_id_servers"] = ["testis"] + def get_json(uri, args={}, headers=None): + # TODO: Mock v2 hash_details endpoints and don't just run the v1 code + if "/hash_details" in uri: + raise HttpResponseException(404, "I am a happy v1 server", b"{}") + + return defer.succeed((200, "{}")) + mock_http_client = Mock(spec=["get_json", "post_json_get_json"]) - mock_http_client.get_json.return_value = defer.succeed((200, "{}")) + mock_http_client.get_json.side_effect = get_json mock_http_client.post_json_get_json.return_value = defer.succeed((200, "{}")) self.hs = self.setup_test_homeserver( @@ -143,8 +151,10 @@ class IdentityEnabledTestCase(unittest.HomeserverTestCase): ) self.render(request) + # There will be a call to hash_details, which will 404 + # then /lookup. Thus we don't use `assert_called_with_once` here get_json = self.hs.get_simple_http_client().get_json - get_json.assert_called_once_with( + get_json.assert_called_with( "https://testis/_matrix/identity/api/v1/lookup", {"address": "test@example.com", "medium": "email"}, ) @@ -157,8 +167,10 @@ class IdentityEnabledTestCase(unittest.HomeserverTestCase): request, channel = self.make_request("GET", url, access_token=self.tok) self.render(request) + # There will be a call to hash_details, which will 404 + # then /lookup. Thus we don't use `assert_called_with_once` here get_json = self.hs.get_simple_http_client().get_json - get_json.assert_called_once_with( + get_json.assert_called_with( "https://testis/_matrix/identity/api/v1/lookup", {"address": "foo@bar.baz", "medium": "email"}, ) diff --git a/tests/rest/client/test_room_access_rules.py b/tests/rest/client/test_room_access_rules.py
index d44f5c2c8c..69920853e6 100644 --- a/tests/rest/client/test_room_access_rules.py +++ b/tests/rest/client/test_room_access_rules.py
@@ -22,6 +22,7 @@ from mock import Mock from twisted.internet import defer from synapse.api.constants import EventTypes, JoinRules, RoomCreationPreset +from synapse.api.errors import HttpResponseException from synapse.rest import admin from synapse.rest.client.v1 import login, room from synapse.third_party_rules.access_rules import ( @@ -58,6 +59,10 @@ class RoomAccessTestCase(unittest.HomeserverTestCase): return defer.succeed(pdu) def get_json(uri, args={}, headers=None): + # TODO: Mock v2 hash_details endpoints and don't just run the v1 code + if "/hash_details" in uri: + raise HttpResponseException(404, "I am a happy v1 server", b"{}") + address_domain = args["address"].split("@")[1] return defer.succeed({"hs": address_domain}) @@ -332,6 +337,7 @@ class RoomAccessTestCase(unittest.HomeserverTestCase): self.hs.config.rc_third_party_invite.burst_count = 10 self.hs.config.rc_third_party_invite.per_second = 0.1 + # Note: These calls trigger the mocked get_json method above # We can't send a 3PID invite to a room that already has two members. self.send_threepid_invite( address="test@allowed_domain", diff --git a/tests/rest/client/v2_alpha/test_register.py b/tests/rest/client/v2_alpha/test_register.py
index 9e72cae62a..9b7eb1e856 100644 --- a/tests/rest/client/v2_alpha/test_register.py +++ b/tests/rest/client/v2_alpha/test_register.py
@@ -52,7 +52,6 @@ class RegisterRestServletTestCase(unittest.HomeserverTestCase): return self.hs - @unittest.DEBUG def test_POST_appservice_registration_valid(self): user_id = "@as_user_kermit:test" as_token = "i_am_an_app_service" diff --git a/tests/rulecheck/test_domainrulecheck.py b/tests/rulecheck/test_domainrulecheck.py
index 1accc70dc9..145d6cba5b 100644 --- a/tests/rulecheck/test_domainrulecheck.py +++ b/tests/rulecheck/test_domainrulecheck.py
@@ -15,6 +15,8 @@ import json +from mock import Mock +from twisted.internet import defer import synapse.rest.admin from synapse.config._base import ConfigError @@ -287,6 +289,9 @@ class DomainRuleCheckerRoomTestCase(unittest.HomeserverTestCase): def test_cannot_3pid_invite(self): """Test that unbound 3pid invites get rejected. """ + self.hs.get_room_member_handler().lookup_3pid = Mock() + self.hs.get_room_member_handler().lookup_3pid.return_value = defer.succeed(None) + channel = self._create_room(self.admin_access_token) assert channel.result["code"] == b"200", channel.result