From d23c5c00666fb83cd47a0136034164e8ef5a7df4 Mon Sep 17 00:00:00 2001 From: Egor Tensin Date: Tue, 23 Jun 2026 12:09:52 +0200 Subject: test: proper logging setup --- test/toolkit.py | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) (limited to 'test/toolkit.py') diff --git a/test/toolkit.py b/test/toolkit.py index 4d8431d..7ef2b71 100644 --- a/test/toolkit.py +++ b/test/toolkit.py @@ -4,10 +4,28 @@ # Distributed under the MIT License. from collections.abc import Iterable +from contextlib import contextmanager from enum import Enum import logging import os.path import subprocess +import sys + + +@contextmanager +def setup_logging(verbose=False): + level = logging.DEBUG if verbose else logging.INFO + logging.basicConfig( + level=level, + datefmt="%Y-%m-%d %H:%M:%S%z", + # The 8 below is for "CRITICAL" + format="%(asctime)s | %(levelname)8s | %(message)s", + ) + try: + yield + except Exception as e: + logging.exception(e) + sys.exit(1) class Algorithm(Enum): -- cgit v1.3