Refactor project structure and update configurations for State Corp backend
- Updated project description in __init__.py - Enhanced .gitignore to exclude additional data files - Modified User model to remove first_name and last_name fields - Improved instance save method in services.py to include updated_at field - Added API tokens to .env.example for external services - Cleaned up test files for better readability - Updated Dockerfile and docker-compose.yml for improved setup - Revised README.md to reflect project changes and added changelog
This commit is contained in:
35
run_tests.py
35
run_tests.py
@@ -5,10 +5,9 @@
|
||||
Поддерживает coverage и дополнительные опции
|
||||
"""
|
||||
|
||||
import argparse
|
||||
import os
|
||||
import sys
|
||||
from io import StringIO
|
||||
import argparse
|
||||
|
||||
import django
|
||||
|
||||
@@ -59,51 +58,47 @@ def run_tests_with_args(test_args, options):
|
||||
|
||||
def parse_arguments():
|
||||
"""Парсинг аргументов командной строки"""
|
||||
parser = argparse.ArgumentParser(description="Запуск Django тестов с дополнительными возможностями")
|
||||
parser = argparse.ArgumentParser(
|
||||
description="Запуск Django тестов с дополнительными возможностями"
|
||||
)
|
||||
|
||||
parser.add_argument(
|
||||
"targets",
|
||||
nargs="*",
|
||||
help="Цели тестирования (по умолчанию: все тесты)",
|
||||
default=["tests"]
|
||||
default=["tests"],
|
||||
)
|
||||
|
||||
parser.add_argument(
|
||||
"--coverage", "--cov",
|
||||
"--coverage",
|
||||
"--cov",
|
||||
action="store_true",
|
||||
help="Запуск тестов с измерением покрытия кода"
|
||||
help="Запуск тестов с измерением покрытия кода",
|
||||
)
|
||||
|
||||
parser.add_argument(
|
||||
"--fast",
|
||||
action="store_true",
|
||||
help="Запуск только быстрых тестов (исключает медленные)"
|
||||
help="Запуск только быстрых тестов (исключает медленные)",
|
||||
)
|
||||
|
||||
parser.add_argument(
|
||||
"--failfast",
|
||||
action="store_true",
|
||||
help="Остановка при первой ошибке"
|
||||
"--failfast", action="store_true", help="Остановка при первой ошибке"
|
||||
)
|
||||
|
||||
parser.add_argument(
|
||||
"--verbose", "-v",
|
||||
action="count",
|
||||
default=2,
|
||||
help="Уровень детализации вывода"
|
||||
"--verbose", "-v", action="count", default=2, help="Уровень детализации вывода"
|
||||
)
|
||||
|
||||
parser.add_argument(
|
||||
"--keepdb",
|
||||
action="store_true",
|
||||
help="Сохранить тестовую базу данных"
|
||||
"--keepdb", action="store_true", help="Сохранить тестовую базу данных"
|
||||
)
|
||||
|
||||
parser.add_argument(
|
||||
"--parallel",
|
||||
type=int,
|
||||
metavar="N",
|
||||
help="Запуск тестов в N параллельных процессах"
|
||||
help="Запуск тестов в N параллельных процессах",
|
||||
)
|
||||
|
||||
args = parser.parse_args()
|
||||
@@ -186,6 +181,7 @@ def setup_coverage():
|
||||
"""Настройка coverage"""
|
||||
try:
|
||||
import coverage
|
||||
|
||||
cov = coverage.Coverage(config_file="pyproject.toml")
|
||||
cov.start()
|
||||
return cov
|
||||
@@ -245,7 +241,7 @@ def main():
|
||||
print(f"\n❌ Тесты завершились с ошибками: {failures} неудачных тестов")
|
||||
sys.exit(1)
|
||||
else:
|
||||
print(f"\n✅ Все тесты прошли успешно!")
|
||||
print("\n✅ Все тесты прошли успешно!")
|
||||
if cov:
|
||||
print("📊 Отчет о покрытии сохранен")
|
||||
sys.exit(0)
|
||||
@@ -260,6 +256,7 @@ def main():
|
||||
if cov:
|
||||
cov.stop()
|
||||
import traceback
|
||||
|
||||
traceback.print_exc()
|
||||
sys.exit(1)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user