diff options
author | John Turner <jturner.usa@gmail.com> | 2025-09-23 19:04:03 -0400 |
---|---|---|
committer | John Turner <jturner.usa@gmail.com> | 2025-09-23 19:04:03 -0400 |
commit | b59489de36ad01ba0c28db9905f3c01f44a27a26 (patch) | |
tree | 5b96a3a7c8c55fff39787190df949a37b1ebbdf8 /tests/test_server.py | |
parent | 1b0fede86a689c1f8e7c77e851318b7ea3c28fef (diff) | |
download | pypaste-b59489de36ad01ba0c28db9905f3c01f44a27a26.tar.gz |
debuggingselect sqlite.data from sqlite where key=? limit 1"debugging
Diffstat (limited to 'tests/test_server.py')
-rwxr-xr-x | tests/test_server.py | 23 |
1 files changed, 16 insertions, 7 deletions
diff --git a/tests/test_server.py b/tests/test_server.py index 0ccfc5b..2b1ed2e 100755 --- a/tests/test_server.py +++ b/tests/test_server.py @@ -7,6 +7,7 @@ import string import random import aiohttp from pathlib import Path +from asyncio import Queue def truncate(file: Path) -> None: @@ -20,10 +21,21 @@ def generate_name() -> str: return "".join(random.choice(characters) for _ in range(10)) +async def tee_pipe(proc: asyncio.subprocess.Process, queue: Queue[str]) -> None: + assert proc.stdout is not None + + while (line := await proc.stdout.readline()) is not None: + sys.stderr.write(line.decode()) + await queue.put(line.decode()) + + async def main() -> int: - with tempfile.TemporaryDirectory() as tmpdir: + with tempfile.TemporaryDirectory(delete=False) as tmpdir: + print(tmpdir, file=sys.stderr) + socket = Path(tmpdir) / (generate_name() + ".sock") database = Path(tmpdir) / generate_name() + queue: Queue[str] = Queue() truncate(database) @@ -38,7 +50,7 @@ async def main() -> int: "--content-length-max-bytes", "200000", "--key-length", - "3", + "6", "--database", database, "--storage-max-bytes", @@ -48,12 +60,9 @@ async def main() -> int: stderr=asyncio.subprocess.STDOUT, ) - assert proc.stdout is not None - - line = await proc.stdout.readline() + asyncio.create_task(tee_pipe(proc, queue)) - if b"starting" not in line: - print(line, file=sys.stderr) + if "starting" not in await queue.get(): return 1 connection = aiohttp.UnixConnector(path=str(socket)) |