From 8d87442ed1a009439ccef9bfbfdb8e9b39252264 Mon Sep 17 00:00:00 2001 From: Mohammed Date: Thu, 20 Feb 2025 17:25:59 +0000 Subject: [PATCH] allow assigning a port in DaphneProcess --- daphne/testing.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/daphne/testing.py b/daphne/testing.py index 46787bb..28b5f84 100644 --- a/daphne/testing.py +++ b/daphne/testing.py @@ -126,14 +126,14 @@ class DaphneProcess(multiprocessing.Process): port it ends up listening on back to the parent process. """ - def __init__(self, host, get_application, kwargs=None, setup=None, teardown=None): + def __init__(self, host, get_application, kwargs=None, setup=None, teardown=None, port=None): super().__init__() self.host = host self.get_application = get_application self.kwargs = kwargs or {} self.setup = setup self.teardown = teardown - self.port = multiprocessing.Value("i") + self.port = multiprocessing.Value("i", port if port is not None else 0) self.ready = multiprocessing.Event() self.errors = multiprocessing.Queue() @@ -153,7 +153,7 @@ def run(self): try: # Create the server class - endpoints = build_endpoint_description_strings(host=self.host, port=0) + endpoints = build_endpoint_description_strings(host=self.host, port=self.port.value) self.server = Server( application=application, endpoints=endpoints,