"""
Общие фикстуры для unit-тестов фабрик.
"""
import sys
from pathlib import Path
import pytest
from unittest.mock import Mock, MagicMock
# Добавляем корневую директорию проекта в путь поиска модулей
project_root = Path(__file__).parent.parent.parent
sys.path.insert(0, str(project_root))
# Также можно добавить конкретную директорию с модулями
src_path = project_root / "abs_art_tabular"
sys.path.insert(0, str(src_path))
[документация]
@pytest.fixture
def mock_model():
"""Mock объект модели для тестирования."""
# Создаем простой класс для модели
class BaseModel:
pass
model = BaseModel()
model.__class__.__name__ = "MockModel"
return model
[документация]
@pytest.fixture
def sample_attack_config():
"""Пример конфигурации атаки."""
return {
"type": "zoo",
"params": {
"confidence": 0.0,
"targeted": 0,
"learning_rate": 1e-1,
"max_iter": 20
}
}
[документация]
@pytest.fixture
def sample_model_config():
"""Пример конфигурации модели."""
return {
"model_type": "tabular",
"framework": "sklearn",
"mode": "train",
"type": "random_forest",
"params": {
"n_estimators": 100,
"random_state": 42
}
}