56 lines
1.7 KiB
Python
56 lines
1.7 KiB
Python
# DRF Rack
|
|
# Библиотека классов расширений для Django REST Framework
|
|
#
|
|
# Автор: Николай В. Анохин <n.anokhin@xeaf.net>
|
|
# Все права защищены. Лицензия: MIT
|
|
|
|
"""
|
|
Описание класса EnvironmentEnvTests
|
|
"""
|
|
|
|
from unittest.mock import Mock
|
|
|
|
from django.core.exceptions import ImproperlyConfigured
|
|
|
|
from net.xeaf.rack.core.testing import CoreSimpleTestCase
|
|
from net.xeaf.rack.utils.settings import Environment
|
|
|
|
|
|
class EnvironmentEnvTests(CoreSimpleTestCase):
|
|
"""
|
|
Тестовый класс для Environment.env()
|
|
"""
|
|
|
|
def setUp(self):
|
|
"""
|
|
Подготовка тестовой среды: сброс состояния Environment
|
|
"""
|
|
super().setUp()
|
|
Environment._is_initialized = True
|
|
|
|
def test_env_returns_env_object_when_initialized(self):
|
|
"""
|
|
Тест проверяет, что env() возвращает объект Env при инициализации
|
|
"""
|
|
# Arrange
|
|
mock_env = Mock()
|
|
Environment._env = mock_env
|
|
|
|
# Act
|
|
result = Environment.env()
|
|
|
|
# Assert
|
|
self.assertEqual(result, mock_env)
|
|
|
|
def test_env_raises_error_when_not_initialized(self):
|
|
"""
|
|
Тест проверяет, что env() выбрасывает ошибку при отсутствии инициализации
|
|
"""
|
|
# Arrange
|
|
Environment._is_initialized = False
|
|
|
|
# Act & Assert
|
|
with self.assertRaises(ImproperlyConfigured) as context:
|
|
Environment.env()
|
|
self.assertIn("not initialized", str(context.exception))
|