Move environment setup into main(), leaving pure test execution behind in run_linters().
Signed-off-by: John Snow <js...@redhat.com> --- tests/qemu-iotests/297 | 23 ++++++++++++++--------- 1 file changed, 14 insertions(+), 9 deletions(-) diff --git a/tests/qemu-iotests/297 b/tests/qemu-iotests/297 index f9fcb039e27..fcbab0631be 100755 --- a/tests/qemu-iotests/297 +++ b/tests/qemu-iotests/297 @@ -21,7 +21,7 @@ import re import shutil import subprocess import sys -from typing import List +from typing import List, Mapping, Optional import iotests @@ -61,23 +61,20 @@ def get_test_files() -> List[str]: return list(filter(is_python_file, check_tests)) -def run_linters(): - files = get_test_files() - - iotests.logger.debug('Files to be checked:') - iotests.logger.debug(', '.join(sorted(files))) +def run_linters( + files: List[str], + env: Optional[Mapping[str, str]] = None, +) -> None: print('=== pylint ===') sys.stdout.flush() - env = os.environ.copy() subprocess.run(('python3', '-m', 'pylint', *files), env=env, check=False) print('=== mypy ===') sys.stdout.flush() - env['MYPYPATH'] = env['PYTHONPATH'] p = subprocess.run((('python3', '-m', 'mypy', *files), env=env, check=False, @@ -94,7 +91,15 @@ def main() -> None: if shutil.which(linter) is None: iotests.notrun(f'{linter} not found') - run_linters() + files = get_test_files() + + iotests.logger.debug('Files to be checked:') + iotests.logger.debug(', '.join(sorted(files))) + + env = os.environ.copy() + env['MYPYPATH'] = env['PYTHONPATH'] + + run_linters(files, env=env) iotests.script_main(main) -- 2.31.1