31 lines
940 B
Python
31 lines
940 B
Python
|
|
"""Tests for environment-based configuration."""
|
||
|
|
|
||
|
|
from fusionagi.settings import FusionAGIConfig, load_config
|
||
|
|
|
||
|
|
|
||
|
|
def test_default_config():
|
||
|
|
config = FusionAGIConfig()
|
||
|
|
assert config.api.host == "0.0.0.0"
|
||
|
|
assert config.api.port == 8000
|
||
|
|
assert config.api.rate_limit == 120
|
||
|
|
assert config.database.url == "sqlite:///fusionagi.db"
|
||
|
|
assert config.cache.enabled is True
|
||
|
|
assert config.governance.mode == "advisory"
|
||
|
|
|
||
|
|
|
||
|
|
def test_load_config_from_env(monkeypatch):
|
||
|
|
monkeypatch.setenv("FUSIONAGI_API_PORT", "9000")
|
||
|
|
monkeypatch.setenv("FUSIONAGI_LOG_LEVEL", "DEBUG")
|
||
|
|
config = load_config()
|
||
|
|
assert config.api.port == 9000
|
||
|
|
assert config.logging.level == "DEBUG"
|
||
|
|
|
||
|
|
|
||
|
|
def test_config_sections():
|
||
|
|
config = FusionAGIConfig()
|
||
|
|
assert hasattr(config, 'api')
|
||
|
|
assert hasattr(config, 'database')
|
||
|
|
assert hasattr(config, 'cache')
|
||
|
|
assert hasattr(config, 'logging')
|
||
|
|
assert hasattr(config, 'governance')
|