import os
import tempfile
import unittest
from unittest import mock
from hello_hut import config
class ConfigTest(unittest.TestCase):
def test_missing_file(self):
self.assertEqual(config.load_config("/nonexistent/config.toml"), {})
def test_no_home(self):
with mock.patch.dict(os.environ, {}, clear=True):
self.assertIsNone(config.config_path())
@unittest.skipIf(config.tomllib is None, "needs Python 3.11+")
def test_reads_name(self):
with tempfile.NamedTemporaryFile("w", suffix=".toml", delete=False) as f:
f.write('name = "Ada"\n')
try:
self.assertEqual(config.load_config(f.name), {"name": "Ada"})
finally:
os.unlink(f.name)