32 lines
916 B
Python
32 lines
916 B
Python
import pytest
|
|
|
|
from audita.core.config import (
|
|
AuditaConfig,
|
|
ConfigOverrides,
|
|
DEFAULT_NORMALIZE_MAX_SEGMENT_GAP,
|
|
DEFAULT_WORK_DIR_RETENTION,
|
|
)
|
|
from audita.core.errors import AuditaConfigError
|
|
|
|
|
|
def test_default_config_allows_missing_api_key():
|
|
config = AuditaConfig.from_sources(env={})
|
|
|
|
assert config.api_key is None
|
|
assert config.normalize_max_segment_gap == DEFAULT_NORMALIZE_MAX_SEGMENT_GAP
|
|
assert config.work_dir_retention == DEFAULT_WORK_DIR_RETENTION
|
|
|
|
|
|
def test_cli_overrides_take_precedence():
|
|
config = AuditaConfig.from_sources(
|
|
env={"AUDITA_MAX_SECTION_TOKENS": "1000"},
|
|
overrides=ConfigOverrides(max_section_tokens=2000),
|
|
)
|
|
|
|
assert config.max_section_tokens == 2000
|
|
|
|
|
|
def test_invalid_work_dir_retention_is_rejected():
|
|
with pytest.raises(AuditaConfigError):
|
|
AuditaConfig.from_sources(env={"AUDITA_WORK_DIR_RETENTION": "sometimes"})
|