Add initial implementations for forms and organization apps with serializers, factories, and admin configurations
Some checks failed
CI/CD Pipeline / Code Quality Checks (push) Failing after 5m5s
CI/CD Pipeline / Run Tests (push) Failing after 5m5s
CI/CD Pipeline / Build Docker Images (push) Has been skipped
CI/CD Pipeline / Push to Gitea Registry (push) Has been skipped
CI/CD Pipeline / Deploy to Server (push) Has been skipped

This commit is contained in:
2026-02-17 09:26:08 +01:00
parent fd2adf9ab4
commit 8ed3e1175c
119 changed files with 9091 additions and 0 deletions

View File

@@ -0,0 +1,52 @@
"""Tests for Organization services."""
from apps.organization.services import OrganizationService
from django.test import TestCase
from .factories import OrganizationFactory
class OrganizationServiceTest(TestCase):
"""Tests for OrganizationService."""
def test_get_or_create_by_inn_creates_new(self):
"""Test get_or_create_by_inn creates new organization."""
org, created = OrganizationService.get_or_create_by_inn(
inn="1234567890",
defaults={"name": "Test Org", "ogrn": "1234567890123"},
)
self.assertTrue(created)
self.assertEqual(org.inn, "1234567890")
self.assertEqual(org.name, "Test Org")
def test_get_or_create_by_inn_returns_existing(self):
"""Test get_or_create_by_inn returns existing organization."""
existing = OrganizationFactory.create(inn="9876543210")
org, created = OrganizationService.get_or_create_by_inn(
inn="9876543210",
defaults={"name": "Different Name"},
)
self.assertFalse(created)
self.assertEqual(org.pk, existing.pk)
self.assertEqual(org.name, existing.name)
def test_get_by_inn_found(self):
"""Test get_by_inn returns organization."""
existing = OrganizationFactory.create(inn="5555555555")
result = OrganizationService.get_by_inn("5555555555")
self.assertEqual(result.pk, existing.pk)
def test_get_by_inn_not_found(self):
"""Test get_by_inn returns None when not found."""
result = OrganizationService.get_by_inn("0000000000")
self.assertIsNone(result)
def test_search_by_name(self):
"""Test search_by_name functionality."""
OrganizationFactory.create(name="ООО Ромашка")
OrganizationFactory.create(name="ООО Василек")
OrganizationFactory.create(name="АО Ромашка-Плюс")
results = OrganizationService.search_by_name("Ромашка")
self.assertEqual(results.count(), 2)