chore: add base config and package structure

This commit is contained in:
ila
2026-07-04 23:24:51 +08:00
parent 5a7ea348e5
commit 79c57a63c5
14 changed files with 96 additions and 6 deletions
+43
View File
@@ -0,0 +1,43 @@
import importlib
import unittest
from unittest.mock import patch
from app import create_app
class ConfigAndStructureTest(unittest.TestCase):
def test_create_app_loads_environment_config(self):
env = {
"CHIS_BASE_URL": "http://chis.example.test/chis",
"CHIS_PUBLIC_KEY": "PUBLIC_KEY_PLACEHOLDER",
"REDIS_URL": "redis://localhost:6379/0",
"LOG_DIR": "logs",
"ARCHIVE_DIR": "archives",
}
with patch.dict("os.environ", env, clear=False):
app = create_app({"TESTING": True})
self.assertEqual(app.config["CHIS_BASE_URL"], env["CHIS_BASE_URL"])
self.assertEqual(app.config["CHIS_PUBLIC_KEY"], env["CHIS_PUBLIC_KEY"])
self.assertEqual(app.config["REDIS_URL"], env["REDIS_URL"])
self.assertEqual(app.config["LOG_DIR"], env["LOG_DIR"])
self.assertEqual(app.config["ARCHIVE_DIR"], env["ARCHIVE_DIR"])
def test_architecture_packages_are_importable(self):
package_names = [
"app.middleware",
"app.services",
"app.mappers",
"app.chis",
"app.repositories",
"app.validators",
]
for package_name in package_names:
with self.subTest(package_name=package_name):
self.assertIsNotNone(importlib.import_module(package_name))
if __name__ == "__main__":
unittest.main()