golden hour
/opt/cloudlinux/venv/lib/python3.11/site-packages/mako/testing
⬆️ Go Up
Upload
File/Folder
Size
Actions
__init__.py
0 B
Del
OK
__pycache__
-
Del
OK
_config.py
3.48 KB
Del
OK
assertions.py
5.04 KB
Del
OK
config.py
323 B
Del
OK
exclusions.py
1.52 KB
Del
OK
fixtures.py
2.97 KB
Del
OK
helpers.py
1.49 KB
Del
OK
Edit: helpers.py
import contextlib import pathlib from pathlib import Path import re import time from typing import Union from unittest import mock def flatten_result(result): return re.sub(r"[\s\r\n]+", " ", result).strip() def result_lines(result): return [ x.strip() for x in re.split(r"\r?\n", re.sub(r" +", " ", result)) if x.strip() != "" ] def make_path( filespec: Union[Path, str], make_absolute: bool = True, check_exists: bool = False, ) -> Path: path = Path(filespec) if make_absolute: path = path.resolve(strict=check_exists) if check_exists and (not path.exists()): raise FileNotFoundError(f"No file or directory at {filespec}") return path def _unlink_path(path, missing_ok=False): # Replicate 3.8+ functionality in 3.7 cm = contextlib.nullcontext() if missing_ok: cm = contextlib.suppress(FileNotFoundError) with cm: path.unlink() def replace_file_with_dir(pathspec): path = pathlib.Path(pathspec) _unlink_path(path, missing_ok=True) path.mkdir(exist_ok=True) return path def file_with_template_code(filespec): with open(filespec, "w") as f: f.write( """ i am an artificial template just for you """ ) return filespec @contextlib.contextmanager def rewind_compile_time(hours=1): rewound = time.time() - (hours * 3_600) with mock.patch("mako.codegen.time") as codegen_time: codegen_time.time.return_value = rewound yield
Save