File tree Expand file tree Collapse file tree 2 files changed +23
-1
lines changed
Expand file tree Collapse file tree 2 files changed +23
-1
lines changed Original file line number Diff line number Diff line change @@ -770,7 +770,8 @@ def start(self) -> None:
770770 )
771771
772772 self .port = self .server .port # Update port (needed if `port` was set to 0)
773- self .server_thread = threading .Thread (target = self .thread_target )
773+ # Explicitly make the new thread daemonic to avoid shutdown issues
774+ self .server_thread = threading .Thread (target = self .thread_target , daemon = True )
774775 self .server_thread .start ()
775776
776777 def stop (self ):
Original file line number Diff line number Diff line change 1+ from __future__ import annotations
2+
3+ import threading
4+ from typing import TYPE_CHECKING
5+
6+ import requests
7+ from werkzeug import Response
8+
9+ if TYPE_CHECKING :
10+ from werkzeug import Request
11+
12+ from pytest_httpserver import HTTPServer
13+
14+
15+ def test_server_thread_is_daemon (httpserver : HTTPServer ):
16+ def handler (_request : Request ):
17+ return Response (f"{ threading .current_thread ().daemon } " )
18+
19+ httpserver .expect_request ("/foo" ).respond_with_handler (handler )
20+
21+ assert requests .get (httpserver .url_for ("/foo" )).text == "True"
You can’t perform that action at this time.
0 commit comments