35 lines
1 KiB
Python
35 lines
1 KiB
Python
|
|
"""Unit tests for services/district_service.py."""
|
||
|
|
|
||
|
|
import pytest
|
||
|
|
|
||
|
|
from services import district_service
|
||
|
|
|
||
|
|
|
||
|
|
class TestGetAllDistricts:
|
||
|
|
def test_get_all_districts_returns_dict(self):
|
||
|
|
result = district_service.get_all_districts()
|
||
|
|
assert isinstance(result, dict)
|
||
|
|
assert len(result) > 0
|
||
|
|
|
||
|
|
|
||
|
|
class TestGetDistrictNames:
|
||
|
|
def test_get_district_names_returns_list(self):
|
||
|
|
result = district_service.get_district_names()
|
||
|
|
assert isinstance(result, list)
|
||
|
|
assert len(result) > 0
|
||
|
|
|
||
|
|
|
||
|
|
class TestValidateDistricts:
|
||
|
|
def test_validate_districts_all_valid(self):
|
||
|
|
result = district_service.validate_districts(["London", "Westminster"])
|
||
|
|
assert result == []
|
||
|
|
|
||
|
|
def test_validate_districts_returns_invalid(self):
|
||
|
|
result = district_service.validate_districts(["London", "Narnia"])
|
||
|
|
assert "Narnia" in result
|
||
|
|
|
||
|
|
def test_known_districts_present(self):
|
||
|
|
names = district_service.get_district_names()
|
||
|
|
for district in ["London", "Westminster", "Camden"]:
|
||
|
|
assert district in names
|