cov: Add tests for request logging
This commit is contained in:
committed by
Wolfgang Walther
parent
4a9ca9bdae
commit
b0a0c4768d
@@ -7,6 +7,7 @@ from itertools import repeat
|
|||||||
from operator import attrgetter
|
from operator import attrgetter
|
||||||
import os
|
import os
|
||||||
import pathlib
|
import pathlib
|
||||||
|
import re
|
||||||
import shutil
|
import shutil
|
||||||
import signal
|
import signal
|
||||||
import socket
|
import socket
|
||||||
@@ -801,3 +802,46 @@ def test_admin_live_dependent_on_main_app(defaultenv):
|
|||||||
os.remove(defaultenv["PGRST_SERVER_UNIX_SOCKET"])
|
os.remove(defaultenv["PGRST_SERVER_UNIX_SOCKET"])
|
||||||
response = postgrest.admin.get("/live")
|
response = postgrest.admin.get("/live")
|
||||||
assert response.status_code == 503
|
assert response.status_code == 503
|
||||||
|
|
||||||
|
|
||||||
|
@pytest.mark.parametrize(
|
||||||
|
"level, has_output",
|
||||||
|
[
|
||||||
|
("info", [True, True, True]),
|
||||||
|
("warn", [False, True, True]),
|
||||||
|
("error", [False, False, True]),
|
||||||
|
("crit", [False, False, False]),
|
||||||
|
],
|
||||||
|
)
|
||||||
|
def test_log_level(level, has_output, defaultenv):
|
||||||
|
"log_level should filter request logging"
|
||||||
|
|
||||||
|
env = {
|
||||||
|
**defaultenv,
|
||||||
|
"PGRST_LOG_LEVEL": level
|
||||||
|
}
|
||||||
|
|
||||||
|
with run(env=env) as postgrest:
|
||||||
|
response = postgrest.session.get("/")
|
||||||
|
assert response.status_code == 200
|
||||||
|
if has_output[0]:
|
||||||
|
assert re.match(
|
||||||
|
r'unknownSocket - - \[.+\] "GET / HTTP/1.1" 200 - "" "python-requests/.+"',
|
||||||
|
postgrest.process.stdout.readline().decode(),
|
||||||
|
)
|
||||||
|
|
||||||
|
response = postgrest.session.get("/unknown")
|
||||||
|
assert response.status_code == 404
|
||||||
|
if has_output[1]:
|
||||||
|
assert re.match(
|
||||||
|
r'unknownSocket - - \[.+\] "GET /unknown HTTP/1.1" 404 - "" "python-requests/.+"',
|
||||||
|
postgrest.process.stdout.readline().decode(),
|
||||||
|
)
|
||||||
|
|
||||||
|
response = postgrest.session.get("/rpc/raise_bad_pt")
|
||||||
|
assert response.status_code == 500
|
||||||
|
if has_output[2]:
|
||||||
|
assert re.match(
|
||||||
|
r'unknownSocket - - \[.+\] "GET /rpc/raise_bad_pt HTTP/1.1" 500 - "" "python-requests/.+"',
|
||||||
|
postgrest.process.stdout.readline().decode(),
|
||||||
|
)
|
||||||
|
|||||||
Reference in New Issue
Block a user