refactor: Reorganize code structure and create tests directory
- Consolidate surrogates module to processors/surrogates/ - Move ensemble_surrogate.py to proper location - Add deprecation shim for old import path - Create tests/ directory with pytest structure - Move test files from archive/test_scripts/ - Add conftest.py with shared fixtures 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
@@ -59,6 +59,15 @@ def __getattr__(name):
|
|||||||
elif name == 'create_exporter_from_config':
|
elif name == 'create_exporter_from_config':
|
||||||
from .training_data_exporter import create_exporter_from_config
|
from .training_data_exporter import create_exporter_from_config
|
||||||
return create_exporter_from_config
|
return create_exporter_from_config
|
||||||
|
elif name == 'EnsembleSurrogate':
|
||||||
|
from .ensemble_surrogate import EnsembleSurrogate
|
||||||
|
return EnsembleSurrogate
|
||||||
|
elif name == 'OODDetector':
|
||||||
|
from .ensemble_surrogate import OODDetector
|
||||||
|
return OODDetector
|
||||||
|
elif name == 'create_and_train_ensemble':
|
||||||
|
from .ensemble_surrogate import create_and_train_ensemble
|
||||||
|
return create_and_train_ensemble
|
||||||
|
|
||||||
raise AttributeError(f"module 'optimization_engine.processors.surrogates' has no attribute '{name}'")
|
raise AttributeError(f"module 'optimization_engine.processors.surrogates' has no attribute '{name}'")
|
||||||
|
|
||||||
@@ -76,4 +85,7 @@ __all__ = [
|
|||||||
'AutoTrainer',
|
'AutoTrainer',
|
||||||
'TrainingDataExporter',
|
'TrainingDataExporter',
|
||||||
'create_exporter_from_config',
|
'create_exporter_from_config',
|
||||||
|
'EnsembleSurrogate',
|
||||||
|
'OODDetector',
|
||||||
|
'create_and_train_ensemble',
|
||||||
]
|
]
|
||||||
|
|||||||
@@ -1,19 +1,26 @@
|
|||||||
"""
|
"""
|
||||||
Surrogate models for FEA acceleration.
|
DEPRECATED: This module has been moved to optimization_engine.processors.surrogates
|
||||||
|
|
||||||
Available surrogates:
|
Please update your imports:
|
||||||
- EnsembleSurrogate: Multiple MLPs with uncertainty quantification
|
from optimization_engine.processors.surrogates import EnsembleSurrogate
|
||||||
- OODDetector: Out-of-distribution detection
|
|
||||||
|
This module will be removed in a future version.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
from .ensemble_surrogate import (
|
import warnings
|
||||||
|
|
||||||
|
warnings.warn(
|
||||||
|
"optimization_engine.surrogates is deprecated. "
|
||||||
|
"Use optimization_engine.processors.surrogates instead.",
|
||||||
|
DeprecationWarning,
|
||||||
|
stacklevel=2
|
||||||
|
)
|
||||||
|
|
||||||
|
# Redirect imports
|
||||||
|
from optimization_engine.processors.surrogates import (
|
||||||
EnsembleSurrogate,
|
EnsembleSurrogate,
|
||||||
OODDetector,
|
OODDetector,
|
||||||
create_and_train_ensemble
|
create_and_train_ensemble
|
||||||
)
|
)
|
||||||
|
|
||||||
__all__ = [
|
__all__ = ['EnsembleSurrogate', 'OODDetector', 'create_and_train_ensemble']
|
||||||
'EnsembleSurrogate',
|
|
||||||
'OODDetector',
|
|
||||||
'create_and_train_ensemble'
|
|
||||||
]
|
|
||||||
|
|||||||
32
tests/conftest.py
Normal file
32
tests/conftest.py
Normal file
@@ -0,0 +1,32 @@
|
|||||||
|
"""
|
||||||
|
Pytest configuration and shared fixtures for Atomizer tests.
|
||||||
|
"""
|
||||||
|
|
||||||
|
import pytest
|
||||||
|
import sys
|
||||||
|
from pathlib import Path
|
||||||
|
|
||||||
|
# Add project root to path
|
||||||
|
sys.path.insert(0, str(Path(__file__).parent.parent))
|
||||||
|
|
||||||
|
@pytest.fixture
|
||||||
|
def sample_study_dir(tmp_path):
|
||||||
|
"""Create a temporary study directory structure."""
|
||||||
|
study = tmp_path / "test_study"
|
||||||
|
(study / "1_setup").mkdir(parents=True)
|
||||||
|
(study / "2_iterations").mkdir()
|
||||||
|
(study / "3_results").mkdir()
|
||||||
|
return study
|
||||||
|
|
||||||
|
@pytest.fixture
|
||||||
|
def sample_config():
|
||||||
|
"""Sample optimization config for testing."""
|
||||||
|
return {
|
||||||
|
"study_name": "test_study",
|
||||||
|
"design_variables": [
|
||||||
|
{"name": "param1", "lower": 0, "upper": 10, "type": "continuous"}
|
||||||
|
],
|
||||||
|
"objectives": [
|
||||||
|
{"name": "minimize_mass", "direction": "minimize"}
|
||||||
|
]
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user