From 14e4633ee722f3afb91f83f4a6255df8622ac822 Mon Sep 17 00:00:00 2001 From: Ivan Nikolaev-Axenov Date: Thu, 10 Jul 2025 11:03:24 +0300 Subject: [PATCH] test case selection added --- .gitlab-ci.yml | 2 +- clr_test/README.md | 2 ++ clr_test/run_test_docker_containers.py | 9 +++++---- 3 files changed, 8 insertions(+), 5 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 78311f2f4..ecd30edd6 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -17,7 +17,7 @@ preflight: stage: preflight script: - pwd - - git clone -b successful_set_export_fixed "http://gitlab-ci-token:$ACCESS_TOKEN@git.mfd.msk/mfd/clearing_test.git" + - git clone "http://gitlab-ci-token:$ACCESS_TOKEN@git.mfd.msk/mfd/clearing_test.git" artifacts: name: "$CI_COMMIT_REF_NAME" expire_in: 1 day diff --git a/clr_test/README.md b/clr_test/README.md index b71a57320..282931f2a 100644 --- a/clr_test/README.md +++ b/clr_test/README.md @@ -11,6 +11,8 @@ Основное взаимодействие с Docker'ом происходит посредством python-скрипта +Для выбора определенных тест-кейсов можно задать переменную окружения TEST_CASES, например: `5.0.SESN.FOND.TRDT;5.1.SESN.FOND.TRDT.NODEPO` (для разделения используется `;`) + Данный скрипт копирует следующие файлы: * Тестовые файлы в `./clr_test/clearing-all/clearing_testing_utils/` diff --git a/clr_test/run_test_docker_containers.py b/clr_test/run_test_docker_containers.py index 7827766bc..73339d0ae 100644 --- a/clr_test/run_test_docker_containers.py +++ b/clr_test/run_test_docker_containers.py @@ -1,15 +1,12 @@ -from glob import glob import logging import os import re import shutil import subprocess -import sys - +from glob import glob logging.basicConfig(level=logging.INFO, format="%(asctime)s [%(levelname)s] %(message)s") - DATA_ROOT_DIR = os.environ['CLEARING_TEST_DIR'] CLR_TEST_DIR = os.environ['CLR_TEST_DIR'] RESULT_FILES_DIR = os.environ['RESULT_FILES_DIR'] @@ -157,6 +154,10 @@ def combine_ddl_updates_into_file(): def main() -> None: folders = [i for i in sorted(os.listdir(DATA_ROOT_DIR)) if re.search("\\d{1,}.\\d{1,}.*", i)] + if os.getenv("TEST_CASES") is not None: + selected_test_cases = os.getenv("TEST_CASES").split(";") + folders = list(filter(lambda f: f in selected_test_cases, folders)) + remove_if_exists("clr_test/results.txt") combine_ddl_updates_into_file()