fix: keep test finance exchange identities stable
All checks were successful
CI/CD Pipeline / Quality Gate (push) Successful in 27s
CI/CD Pipeline / Build and Push Images (push) Successful in 20s
CI/CD Pipeline / Internal Notify (push) Successful in 0s
CI/CD Pipeline / Deploy Dev via Compose (push) Successful in 31s

This commit is contained in:
2026-08-09 13:29:48 +02:00
parent 5618155503
commit 661e857f53
2 changed files with 20 additions and 2 deletions

View File

@@ -293,12 +293,12 @@ class TestCompanyDatasetService:
if source == ParserLoadLog.Source.FNS_REPORTS:
legacy_record, _ = FinancialReport.objects.update_or_create(
external_id=f"test-company-{index:02d}",
file_hash=payload["file_hash"],
defaults={
**common,
"external_id": external_id,
"ogrn": organization.ogrn,
"file_name": payload["file_name"],
"file_hash": payload["file_hash"],
"status": FinancialReport.Status.SUCCESS,
"source": FinancialReport.SourceType.API,
},

View File

@@ -24,6 +24,7 @@ from organizations.models import (
OrganizationSourceRecord,
SourceGroup,
)
from organizations.test_companies import TEST_RECORD_PREFIX
TEST_EXCHANGE_TOKEN = "test-exchange-token" # noqa: S105
@@ -104,6 +105,13 @@ class TestCompaniesCommandsTest(TestCase):
self.assertEqual(InspectionRecord.objects.count(), 20)
self.assertEqual(ProcurementRecord.objects.count(), 20)
self.assertEqual(FinancialReport.objects.count(), 20)
self.assertEqual(
set(FinancialReport.objects.values_list("external_id", flat=True)),
{
f"{TEST_RECORD_PREFIX}:{index:02d}:{ParserLoadLog.Source.FNS_REPORTS}"
for index in range(1, 21)
},
)
self.assertEqual(FinancialReportLine.objects.count(), 20 * 4)
self.assertEqual(
set(FinancialReportLine.objects.values_list("year", flat=True)),
@@ -129,6 +137,11 @@ class TestCompaniesCommandsTest(TestCase):
record.title = "Устаревшие тестовые данные"
record.payload = {"stale": True}
record.save(update_fields=["title", "payload"])
financial_report = FinancialReport.objects.get(
registry_organization=first_company
)
financial_report.external_id = "test-company-01"
financial_report.save(update_fields=["external_id"])
call_command("create_test_companies", stdout=StringIO())
@@ -145,6 +158,11 @@ class TestCompaniesCommandsTest(TestCase):
record.refresh_from_db()
self.assertNotEqual(record.title, "Устаревшие тестовые данные")
self.assertIn("registration_number", record.payload)
financial_report.refresh_from_db()
self.assertEqual(
financial_report.external_id,
f"{TEST_RECORD_PREFIX}:01:{ParserLoadLog.Source.FNS_REPORTS}",
)
self.assertEqual(OrganizationSourceRecord.objects.count(), 20 * 15)
@override_settings(STATE_CORP_EXCHANGE_TOKEN=TEST_EXCHANGE_TOKEN)