feat: restore registry procurement collection
All checks were successful
CI/CD Pipeline / Quality Gate (push) Successful in 28s
CI/CD Pipeline / Build and Push Images (push) Successful in 16s
CI/CD Pipeline / Internal Notify (push) Successful in 0s
CI/CD Pipeline / Deploy Dev via Compose (push) Successful in 23s

This commit is contained in:
2026-07-19 17:46:15 +02:00
parent 59769be400
commit c344bef777
14 changed files with 1010 additions and 96 deletions

View File

@@ -37,6 +37,58 @@ class CheckoClientParsingTest(SimpleTestCase):
data["\u0417\u0430\u043f\u0438\u0441\u0438"][0]["\u041e\u0413\u0420\u041d"],
)
def test_parse_company_maps_russian_unfair_supplier_records(self):
data = _map_ru_keys(
{
"ОГРН": "1027700000001",
"ИНН": "7701000001",
"НаимСокр": "ООО ОПК",
"НедобПост": True,
"НедобПостЗап": [
{
"РеестрНомер": "RNP-1",
"ДатаПуб": "2026-07-01",
"ДатаУтв": "2026-06-30",
"ЗаказНаимСокр": "Заказчик",
"ЗаказНаимПолн": "Заказчик полный",
"ЗаказИНН": "7702000002",
"ЗаказКПП": "770201001",
"ЗакупНомер": "PURCHASE-1",
"ЗакупОпис": "Поставка оборудования",
"ЦенаКонтр": 1500000,
},
{
"РеестрНомер": "RNP-2",
"ЗакупНомер": "PURCHASE-2",
},
],
}
)
company = self.client._parse_company_data(data)
self.assertEqual(len(company.unfair_supplier), 2)
record = company.unfair_supplier[0]
self.assertEqual(record.registry_number, "RNP-1")
self.assertEqual(record.customer_inn, "7702000002")
self.assertEqual(record.purchase_description, "Поставка оборудования")
self.assertEqual(record.contract_price, 1500000)
self.assertEqual(company.unfair_supplier[1].registry_number, "RNP-2")
def test_parse_company_handles_empty_unfair_supplier_records(self):
company = self.client._parse_company_data(
_map_ru_keys(
{
"ОГРН": "1027700000001",
"ИНН": "7701000001",
"НедобПост": False,
"НедобПостЗап": [],
}
)
)
self.assertEqual(company.unfair_supplier, ())
def test_parse_okved_info_with_additional(self):
info = self.client._parse_okved_info(
{"code": "62.01", "name": "Development", "version": "2001"},