mirror of
https://git.anonymousland.org/anonymousland/synapse.git
synced 2025-08-09 15:32:25 -04:00
Merge pull request #8757 from matrix-org/rav/pass_site_to_make_request
Pass a Site into `make_request`
This commit is contained in:
commit
3dc1871219
17 changed files with 228 additions and 88 deletions
|
@ -21,6 +21,7 @@ from twisted.python.failure import Failure
|
|||
from twisted.test.proto_helpers import AccumulatingProtocol, MemoryReactorClock
|
||||
from twisted.web.http import unquote
|
||||
from twisted.web.http_headers import Headers
|
||||
from twisted.web.resource import IResource
|
||||
from twisted.web.server import Site
|
||||
|
||||
from synapse.http.site import SynapseRequest
|
||||
|
@ -147,9 +148,21 @@ class FakeSite:
|
|||
site_tag = "test"
|
||||
access_logger = logging.getLogger("synapse.access.http.fake")
|
||||
|
||||
def __init__(self, resource: IResource):
|
||||
"""
|
||||
|
||||
Args:
|
||||
resource: the resource to be used for rendering all requests
|
||||
"""
|
||||
self._resource = resource
|
||||
|
||||
def getResourceFor(self, request):
|
||||
return self._resource
|
||||
|
||||
|
||||
def make_request(
|
||||
reactor,
|
||||
site: Site,
|
||||
method,
|
||||
path,
|
||||
content=b"",
|
||||
|
@ -167,6 +180,8 @@ def make_request(
|
|||
content, and return the Request and the Channel underneath.
|
||||
|
||||
Args:
|
||||
site: The twisted Site to associate with the Channel
|
||||
|
||||
method (bytes/unicode): The HTTP request method ("verb").
|
||||
path (bytes/unicode): The HTTP path, suitably URL encoded (e.g.
|
||||
escaped UTF-8 & spaces and such).
|
||||
|
@ -202,10 +217,11 @@ def make_request(
|
|||
if not path.startswith(b"/"):
|
||||
path = b"/" + path
|
||||
|
||||
if isinstance(content, dict):
|
||||
content = json.dumps(content).encode("utf8")
|
||||
if isinstance(content, str):
|
||||
content = content.encode("utf8")
|
||||
|
||||
site = FakeSite()
|
||||
channel = FakeChannel(site, reactor)
|
||||
|
||||
req = request(channel)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue