"""Tests for configuration system.""" import pytest import os import tempfile from pathlib import Path from unittest.mock import patch from src.core.config import Config, get_config class TestConfig: """Tests for Config class.""" def test_config_initialization(self, tmp_path): """Test config initialization.""" config_file = tmp_path / "config.yaml" config = Config(config_file=str(config_file)) assert config is not None assert config.config_dir is not None assert config.data_dir is not None def test_config_get(self, tmp_path): """Test config get method.""" config_file = tmp_path / "config.yaml" config = Config(config_file=str(config_file)) # Test nested key access value = config.get('paper_trading.default_capital') assert value is not None def test_config_set(self, tmp_path): """Test config set method.""" config_file = tmp_path / "config.yaml" config = Config(config_file=str(config_file)) config.set('paper_trading.default_capital', 200.0) value = config.get('paper_trading.default_capital') assert value == 200.0 def test_config_defaults(self, tmp_path): """Test default configuration values.""" config_file = tmp_path / "config.yaml" config = Config(config_file=str(config_file)) assert config.get('paper_trading.default_capital') == 100.0 assert config.get('database.type') == 'postgresql'