Skip to content

Commit 467addf

Browse files
authored
Merge pull request #1 from azmeuk/disable-logging
Option to disable server logging
2 parents 7776a99 + 169c0ed commit 467addf

File tree

2 files changed

+25
-4
lines changed

2 files changed

+25
-4
lines changed

CHANGES.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,7 @@
1+
# 0.1.3 - Unreleased
2+
3+
- Option to disable the server request logging.
4+
15
# 0.1.2 - 2025-01-27
26

37
- Initial GHA workflow.

pytest_scim2_server/__init__.py

Lines changed: 21 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
import threading
2-
import wsgiref.simple_server
32
from dataclasses import dataclass
3+
from wsgiref.simple_server import WSGIRequestHandler
4+
from wsgiref.simple_server import make_server
45

56
import portpicker
67
import pytest
@@ -20,6 +21,19 @@ class Server:
2021
app: SCIMProvider
2122
"""The scim2-server WSGI application."""
2223

24+
logging: bool = False
25+
"""Whether the request access log is enabled."""
26+
27+
def make_request_handler(self):
28+
server = self
29+
30+
class RequestHandler(WSGIRequestHandler):
31+
def log_request(self, code="-", size="-"):
32+
if server.logging:
33+
super().log_request(code, size)
34+
35+
return RequestHandler
36+
2337

2438
@pytest.fixture(scope="session")
2539
def scim2_server():
@@ -35,13 +49,16 @@ def scim2_server():
3549

3650
host = "localhost"
3751
port = portpicker.pick_unused_port()
38-
httpd = wsgiref.simple_server.make_server(host, port, provider)
52+
53+
server = Server(port=port, app=provider)
54+
55+
httpd = make_server(
56+
host, port, provider, handler_class=server.make_request_handler()
57+
)
3958

4059
server_thread = threading.Thread(target=httpd.serve_forever)
4160
server_thread.start()
4261

43-
server = Server(port=port, app=provider)
44-
4562
try:
4663
yield server
4764
finally:

0 commit comments

Comments
 (0)