Files

24 lines
710 B
Python
Raw Permalink Normal View History

2026-08-24 08:11:59 -07:00
import unittest
from settings import merge_settings
class MergeSettingsTests(unittest.TestCase):
def test_recursive_merge(self):
self.assertEqual(
merge_settings({"s": {"host": "x", "port": 80}}, {"s": {"port": 443}}),
{"s": {"host": "x", "port": 443}},
)
def test_inputs_and_outputs_do_not_alias(self):
base = {"s": {"host": "x"}, "flags": {"safe": True}}
overlay = {"s": {"port": 443}}
merged = merge_settings(base, overlay)
merged["s"]["host"] = "changed"
merged["flags"]["safe"] = False
self.assertEqual(base, {"s": {"host": "x"}, "flags": {"safe": True}})
if __name__ == "__main__":
unittest.main()