feat: import additional exchange sections
All checks were successful
CI/CD Pipeline / Code Quality Checks (push) Successful in 2m41s
CI/CD Pipeline / Run Tests (push) Successful in 2m47s
CI/CD Pipeline / Build Docker Images (push) Successful in 2m24s
CI/CD Pipeline / Push to Gitea Registry (push) Successful in 0s
CI/CD Pipeline / Deploy to Server (push) Successful in 0s

This commit is contained in:
2026-05-12 15:19:26 +02:00
parent ed34603116
commit bd8e1a8400
25 changed files with 1117 additions and 72 deletions

View File

@@ -188,9 +188,18 @@ class OrganizationAnalyticsApiTest(APITestCase):
self.assertEqual(response.data["insurance_contributions"]["amount"], 302000)
self.assertEqual(response.data["organization_id"], str(self.organization.id))
self.assertEqual(response.data["report_period"], {"year": 2026, "quarter": 1})
self.assertEqual(set(response.data["revenue"]), {"amount", "previous_amount", "delta_percent"})
self.assertEqual(set(response.data["net_profit"]), {"amount", "previous_amount", "delta_percent"})
self.assertEqual(set(response.data["taxes_paid"]), {"amount", "previous_amount", "delta_percent"})
self.assertEqual(
set(response.data["revenue"]),
{"amount", "previous_amount", "delta_percent"},
)
self.assertEqual(
set(response.data["net_profit"]),
{"amount", "previous_amount", "delta_percent"},
)
self.assertEqual(
set(response.data["taxes_paid"]),
{"amount", "previous_amount", "delta_percent"},
)
self.assertEqual(
set(response.data["insurance_contributions"]),
{"amount", "previous_amount", "delta_percent"},
@@ -228,7 +237,12 @@ class OrganizationAnalyticsApiTest(APITestCase):
set(response.data["ratio_normatives"]),
{"ros", "roa", "roe", "ebitda_margin"},
)
self.assertTrue(all(value is not None for value in response.data["ratio_normatives"].values()))
self.assertTrue(
all(
value is not None
for value in response.data["ratio_normatives"].values()
)
)
def test_personnel_contract(self):
personnel_response = self.client.get(
@@ -236,7 +250,9 @@ class OrganizationAnalyticsApiTest(APITestCase):
"?report_year=2026&history_years=2"
)
self.assertEqual(personnel_response.status_code, status.HTTP_200_OK)
self.assertEqual(personnel_response.data["organization_id"], str(self.organization.id))
self.assertEqual(
personnel_response.data["organization_id"], str(self.organization.id)
)
self.assertEqual(personnel_response.data["report_year"], 2026)
self.assertEqual(
personnel_response.data["headcount"]["average_employees"],
@@ -312,15 +328,25 @@ class OrganizationAnalyticsApiTest(APITestCase):
"?frequency=quarterly&price_mode=actual&report_year=2026"
)
self.assertEqual(products_response.status_code, status.HTTP_200_OK)
self.assertEqual(products_response.data["organization_id"], str(self.organization.id))
self.assertEqual(
products_response.data["organization_id"], str(self.organization.id)
)
self.assertEqual(products_response.data["report_year"], 2026)
self.assertEqual(products_response.data["frequency"], "quarterly")
self.assertEqual(products_response.data["price_mode"], "actual")
self.assertEqual(products_response.data["summary"]["military_output_amount"], 11000000)
self.assertEqual(products_response.data["summary"]["civilian_output_amount"], 7000000)
self.assertEqual(products_response.data["summary"]["hightech_output_amount"], 1500000)
self.assertEqual(
products_response.data["summary"]["military_output_amount"], 11000000
)
self.assertEqual(
products_response.data["summary"]["civilian_output_amount"], 7000000
)
self.assertEqual(
products_response.data["summary"]["hightech_output_amount"], 1500000
)
self.assertEqual(products_response.data["summary"]["rd_volume_amount"], 900000)
self.assertEqual(products_response.data["summary"]["shipped_goods_amount"], 18000000)
self.assertEqual(
products_response.data["summary"]["shipped_goods_amount"], 18000000
)
self.assertEqual(len(products_response.data["production_series"]), 1)
self.assertEqual(len(products_response.data["sales_series"]), 1)
self.assertEqual(len(products_response.data["rd_volume_series"]), 1)
@@ -381,7 +407,9 @@ class OrganizationAnalyticsApiTest(APITestCase):
self.assertEqual(monthly_response.status_code, status.HTTP_200_OK)
self.assertEqual(monthly_response.data["frequency"], "monthly")
self.assertEqual(len(monthly_response.data["production_series"]), 6)
self.assertEqual(monthly_response.data["production_series"][0]["period"], "2026-01")
self.assertEqual(
monthly_response.data["production_series"][0]["period"], "2026-01"
)
self.assertEqual(
monthly_response.data["production_series"][0]["military_output_amount"],
3666666,

View File

@@ -230,15 +230,21 @@ class OrganizationApiTest(APITestCase):
response = self.client.get("/api/v1/organizations/?registry_category=goz")
self.assertEqual(response.status_code, status.HTTP_200_OK)
self.assertEqual([item["id"] for item in response.data["results"]], [str(goz_org.id)])
self.assertEqual(
[item["id"] for item in response.data["results"]], [str(goz_org.id)]
)
response = self.client.get("/api/v1/organizations/?registryCategory=opk")
self.assertEqual(response.status_code, status.HTTP_200_OK)
self.assertEqual([item["id"] for item in response.data["results"]], [str(opk_org.id)])
self.assertEqual(
[item["id"] for item in response.data["results"]], [str(opk_org.id)]
)
response = self.client.get("/api/v1/organizations/?registry_category=other")
self.assertEqual(response.status_code, status.HTTP_200_OK)
self.assertIn(str(other_org.id), [item["id"] for item in response.data["results"]])
self.assertIn(
str(other_org.id), [item["id"] for item in response.data["results"]]
)
class OrganizationDictionaryApiTest(APITestCase):