mirror of
https://git.anonymousland.org/anonymousland/synapse-product.git
synced 2025-09-26 13:50:52 -04:00
Convert federation client to async/await. (#7975)
This commit is contained in:
parent
4cce8ef74e
commit
c978f6c451
18 changed files with 209 additions and 221 deletions
|
@ -58,7 +58,9 @@ class FederationClientTests(HomeserverTestCase):
|
|||
@defer.inlineCallbacks
|
||||
def do_request():
|
||||
with LoggingContext("one") as context:
|
||||
fetch_d = self.cl.get_json("testserv:8008", "foo/bar")
|
||||
fetch_d = defer.ensureDeferred(
|
||||
self.cl.get_json("testserv:8008", "foo/bar")
|
||||
)
|
||||
|
||||
# Nothing happened yet
|
||||
self.assertNoResult(fetch_d)
|
||||
|
@ -120,7 +122,9 @@ class FederationClientTests(HomeserverTestCase):
|
|||
"""
|
||||
If the DNS lookup returns an error, it will bubble up.
|
||||
"""
|
||||
d = self.cl.get_json("testserv2:8008", "foo/bar", timeout=10000)
|
||||
d = defer.ensureDeferred(
|
||||
self.cl.get_json("testserv2:8008", "foo/bar", timeout=10000)
|
||||
)
|
||||
self.pump()
|
||||
|
||||
f = self.failureResultOf(d)
|
||||
|
@ -128,7 +132,9 @@ class FederationClientTests(HomeserverTestCase):
|
|||
self.assertIsInstance(f.value.inner_exception, DNSLookupError)
|
||||
|
||||
def test_client_connection_refused(self):
|
||||
d = self.cl.get_json("testserv:8008", "foo/bar", timeout=10000)
|
||||
d = defer.ensureDeferred(
|
||||
self.cl.get_json("testserv:8008", "foo/bar", timeout=10000)
|
||||
)
|
||||
|
||||
self.pump()
|
||||
|
||||
|
@ -154,7 +160,9 @@ class FederationClientTests(HomeserverTestCase):
|
|||
If the HTTP request is not connected and is timed out, it'll give a
|
||||
ConnectingCancelledError or TimeoutError.
|
||||
"""
|
||||
d = self.cl.get_json("testserv:8008", "foo/bar", timeout=10000)
|
||||
d = defer.ensureDeferred(
|
||||
self.cl.get_json("testserv:8008", "foo/bar", timeout=10000)
|
||||
)
|
||||
|
||||
self.pump()
|
||||
|
||||
|
@ -184,7 +192,9 @@ class FederationClientTests(HomeserverTestCase):
|
|||
If the HTTP request is connected, but gets no response before being
|
||||
timed out, it'll give a ResponseNeverReceived.
|
||||
"""
|
||||
d = self.cl.get_json("testserv:8008", "foo/bar", timeout=10000)
|
||||
d = defer.ensureDeferred(
|
||||
self.cl.get_json("testserv:8008", "foo/bar", timeout=10000)
|
||||
)
|
||||
|
||||
self.pump()
|
||||
|
||||
|
@ -226,7 +236,7 @@ class FederationClientTests(HomeserverTestCase):
|
|||
# Try making a GET request to a blacklisted IPv4 address
|
||||
# ------------------------------------------------------
|
||||
# Make the request
|
||||
d = cl.get_json("internal:8008", "foo/bar", timeout=10000)
|
||||
d = defer.ensureDeferred(cl.get_json("internal:8008", "foo/bar", timeout=10000))
|
||||
|
||||
# Nothing happened yet
|
||||
self.assertNoResult(d)
|
||||
|
@ -244,7 +254,9 @@ class FederationClientTests(HomeserverTestCase):
|
|||
# Try making a POST request to a blacklisted IPv6 address
|
||||
# -------------------------------------------------------
|
||||
# Make the request
|
||||
d = cl.post_json("internalv6:8008", "foo/bar", timeout=10000)
|
||||
d = defer.ensureDeferred(
|
||||
cl.post_json("internalv6:8008", "foo/bar", timeout=10000)
|
||||
)
|
||||
|
||||
# Nothing has happened yet
|
||||
self.assertNoResult(d)
|
||||
|
@ -263,7 +275,7 @@ class FederationClientTests(HomeserverTestCase):
|
|||
# Try making a GET request to a non-blacklisted IPv4 address
|
||||
# ----------------------------------------------------------
|
||||
# Make the request
|
||||
d = cl.post_json("fine:8008", "foo/bar", timeout=10000)
|
||||
d = defer.ensureDeferred(cl.post_json("fine:8008", "foo/bar", timeout=10000))
|
||||
|
||||
# Nothing has happened yet
|
||||
self.assertNoResult(d)
|
||||
|
@ -286,7 +298,7 @@ class FederationClientTests(HomeserverTestCase):
|
|||
request = MatrixFederationRequest(
|
||||
method="GET", destination="testserv:8008", path="foo/bar"
|
||||
)
|
||||
d = self.cl._send_request(request, timeout=10000)
|
||||
d = defer.ensureDeferred(self.cl._send_request(request, timeout=10000))
|
||||
|
||||
self.pump()
|
||||
|
||||
|
@ -310,7 +322,9 @@ class FederationClientTests(HomeserverTestCase):
|
|||
If the HTTP request is connected, but gets no response before being
|
||||
timed out, it'll give a ResponseNeverReceived.
|
||||
"""
|
||||
d = self.cl.post_json("testserv:8008", "foo/bar", timeout=10000)
|
||||
d = defer.ensureDeferred(
|
||||
self.cl.post_json("testserv:8008", "foo/bar", timeout=10000)
|
||||
)
|
||||
|
||||
self.pump()
|
||||
|
||||
|
@ -342,7 +356,9 @@ class FederationClientTests(HomeserverTestCase):
|
|||
requiring a trailing slash. We need to retry the request with a
|
||||
trailing slash. Workaround for Synapse <= v0.99.3, explained in #3622.
|
||||
"""
|
||||
d = self.cl.get_json("testserv:8008", "foo/bar", try_trailing_slash_on_400=True)
|
||||
d = defer.ensureDeferred(
|
||||
self.cl.get_json("testserv:8008", "foo/bar", try_trailing_slash_on_400=True)
|
||||
)
|
||||
|
||||
# Send the request
|
||||
self.pump()
|
||||
|
@ -395,7 +411,9 @@ class FederationClientTests(HomeserverTestCase):
|
|||
|
||||
See test_client_requires_trailing_slashes() for context.
|
||||
"""
|
||||
d = self.cl.get_json("testserv:8008", "foo/bar", try_trailing_slash_on_400=True)
|
||||
d = defer.ensureDeferred(
|
||||
self.cl.get_json("testserv:8008", "foo/bar", try_trailing_slash_on_400=True)
|
||||
)
|
||||
|
||||
# Send the request
|
||||
self.pump()
|
||||
|
@ -432,7 +450,11 @@ class FederationClientTests(HomeserverTestCase):
|
|||
self.failureResultOf(d)
|
||||
|
||||
def test_client_sends_body(self):
|
||||
self.cl.post_json("testserv:8008", "foo/bar", timeout=10000, data={"a": "b"})
|
||||
defer.ensureDeferred(
|
||||
self.cl.post_json(
|
||||
"testserv:8008", "foo/bar", timeout=10000, data={"a": "b"}
|
||||
)
|
||||
)
|
||||
|
||||
self.pump()
|
||||
|
||||
|
@ -453,7 +475,7 @@ class FederationClientTests(HomeserverTestCase):
|
|||
|
||||
def test_closes_connection(self):
|
||||
"""Check that the client closes unused HTTP connections"""
|
||||
d = self.cl.get_json("testserv:8008", "foo/bar")
|
||||
d = defer.ensureDeferred(self.cl.get_json("testserv:8008", "foo/bar"))
|
||||
|
||||
self.pump()
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue