feat: обновления парсеров, тестов и миграций
Some checks failed
CI/CD Pipeline / Run Tests (push) Failing after 37s
CI/CD Pipeline / Code Quality Checks (push) Failing after 43s
CI/CD Pipeline / Build & Push Images (push) Has been skipped
CI/CD Pipeline / Deploy (dev) (push) Has been skipped
CI/CD Pipeline / Deploy (prod) (push) Has been skipped
CI/CD Pipeline / Code Quality Checks (pull_request) Failing after 0s
CI/CD Pipeline / Run Tests (pull_request) Failing after 0s
CI/CD Pipeline / Build & Push Images (pull_request) Has been skipped
CI/CD Pipeline / Deploy (dev) (pull_request) Has been skipped
CI/CD Pipeline / Deploy (prod) (pull_request) Has been skipped

- Обновлены клиенты парсеров (checko, fns, minpromtorg, proverki, zakupki)
- Добавлены новые миграции для моделей
- Расширено покрытие тестами
- Обновлены конфигурации и настройки проекта
- Добавлены утилиты для тестирования

Co-Authored-By: Warp <agent@warp.dev>
This commit is contained in:
2026-02-10 10:17:47 +01:00
parent 975d019ba5
commit ee95628a0a
59 changed files with 7292 additions and 2876 deletions

View File

@@ -234,3 +234,40 @@ class BackgroundJobServiceTest(TestCase):
self.assertIn("job-active-pending", active_task_ids)
self.assertIn("job-active-started", active_task_ids)
self.assertNotIn("job-active-success", active_task_ids)
def test_get_active_jobs_user_filter(self):
job_user = BackgroundJobService.create_job(
task_id="job-user-1",
task_name="test.task",
user_id=1,
)
job_other = BackgroundJobService.create_job(
task_id="job-user-2",
task_name="test.task",
user_id=2,
)
job_other.mark_started()
active_jobs = list(BackgroundJobService.get_active_jobs(user_id=1))
self.assertEqual([j.task_id for j in active_jobs], [job_user.task_id])
def test_cleanup_old_jobs(self):
from datetime import timedelta
from django.utils import timezone
old_job = BackgroundJobService.create_job(
task_id="job-old",
task_name="test.task",
)
old_job.complete()
old_job.completed_at = timezone.now() - timedelta(days=31)
old_job.save(update_fields=["completed_at"])
recent_job = BackgroundJobService.create_job(
task_id="job-recent",
task_name="test.task",
)
recent_job.complete()
deleted = BackgroundJobService.cleanup_old_jobs(days=30)
self.assertEqual(deleted, 1)