| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859 |
- import tempfile
- import unittest
- from pathlib import Path
- from app_config import load_config
- class AppConfigTest(unittest.TestCase):
- def test_load_config_with_defaults(self):
- with tempfile.TemporaryDirectory() as tmp_dir:
- path = Path(tmp_dir) / "config.yaml"
- path.write_text(
- """
- db:
- host: 127.0.0.1
- port: 5432
- database: test_db
- user: postgres
- password: secret
- """.strip(),
- encoding="utf-8",
- )
- config = load_config(path)
- self.assertEqual(config.db.host, "127.0.0.1")
- self.assertEqual(config.db.port, 5432)
- self.assertEqual(config.modbus.host, "0.0.0.0")
- self.assertEqual(config.modbus.port, 502)
- self.assertEqual(config.http_provider.interval, 5)
- self.assertEqual(config.http_provider.batch_size, 200)
- self.assertEqual(config.logging.retention_days, 3)
- def test_load_http_provider_refresh_options(self):
- with tempfile.TemporaryDirectory() as tmp_dir:
- path = Path(tmp_dir) / "config.yaml"
- path.write_text(
- """
- db:
- host: 127.0.0.1
- port: 5432
- database: test_db
- user: postgres
- password: secret
- http_provider:
- interval: 10
- batch_size: 50
- """.strip(),
- encoding="utf-8",
- )
- config = load_config(path)
- self.assertEqual(config.http_provider.interval, 10)
- self.assertEqual(config.http_provider.batch_size, 50)
- if __name__ == "__main__":
- unittest.main()
|