comparison tests/test.py @ 97:1b4d95f60650

Build a tree-ish configuration from an INI style configuration file
author Franz Glasner <hg@dom66.de>
date Sun, 18 Mar 2018 19:15:01 +0100
parents a0ed95975980
children 1c2f8a96dec2
comparison
equal deleted inserted replaced
96:778c3bb1fb41 97:1b4d95f60650
36 self.assertTrue(isinstance(cfg.get("key4"), bool)) 36 self.assertTrue(isinstance(cfg.get("key4"), bool))
37 self.assertFalse(cfg.get("key5")) 37 self.assertFalse(cfg.get("key5"))
38 self.assertTrue(isinstance(cfg.get("key5"), bool)) 38 self.assertTrue(isinstance(cfg.get("key5"), bool))
39 self.assertEqual(255, cfg.get("key6")) 39 self.assertEqual(255, cfg.get("key6"))
40 40
41 def __check_tree(self, cfg):
42 self.assertEqual(u("in the root namespace"),
43 cfg.get("key1"))
44 self.assertEqual(u("in the root namespace -- too"),
45 cfg.get("key2"))
46 self.assertEqual(32,
47 cfg["tree1"]["key3"])
48 self.assertEqual(u("get this as `tree1.tree2.key4'"),
49 cfg["tree1"]["tree2"]["key4"])
50 self.assertTrue(cfg["tree1"]["tree2"]["key5"])
51
41 def test01_ini_types(self): 52 def test01_ini_types(self):
42 cfg = configmix.ini.load(os.path.join(TESTDATADIR, "conf1.ini")) 53 cfg = configmix.ini.load(os.path.join(TESTDATADIR, "conf1.ini"))
43 self.__check_types(cfg) 54 self.__check_types(cfg)
44 55
45 def test02_py_types(self): 56 def test02_py_types(self):
63 cfg = configmix.py.load(os.path.join(TESTDATADIR, "conf3.py")) 74 cfg = configmix.py.load(os.path.join(TESTDATADIR, "conf3.py"))
64 self.assertEqual(u("the next value "), cfg.get("key1")) 75 self.assertEqual(u("the next value "), cfg.get("key1"))
65 self.assertTrue(isinstance(cfg.get("key1"), type(u('')))) 76 self.assertTrue(isinstance(cfg.get("key1"), type(u(''))))
66 self.assertTrue(cfg.get("_key2") is None) 77 self.assertTrue(cfg.get("_key2") is None)
67 78
79 def test06_ini_tree(self):
80 cfg = configmix.ini.load(os.path.join(TESTDATADIR, "conf10.ini"))
81 self.__check_tree(cfg)
82
83 def test07_py_tree(self):
84 cfg = configmix.py.load(os.path.join(TESTDATADIR, "conf10.py"))
85 self.__check_tree(cfg)
86
87 def test08_yaml_tree(self):
88 with open(os.path.join(TESTDATADIR, "conf10.yml"), "rt") as f:
89 cfg = configmix.yaml.safe_load(f)
90 self.__check_tree(cfg)
91
68 92
69 if __name__ == "__main__": 93 if __name__ == "__main__":
70 unittest.main() 94 unittest.main()