comparison tests/test.py @ 418:bb5f11abd12a

Implement .getkeysl() and .getkeys() for configuration objects that iterate over all the keys of a configuration value
author Franz Glasner <fzglas.hg@dom66.de>
date Thu, 02 Dec 2021 01:24:53 +0100
parents 83d537f1dfbb
children 079a82129110
comparison
equal deleted inserted replaced
417:83d537f1dfbb 418:bb5f11abd12a
750 *(("db", "non", "existing", "key"), 750 *(("db", "non", "existing", "key"),
751 ("intl", "cache", "items"), 751 ("intl", "cache", "items"),
752 ("db", "non", "existing", "key2")), 752 ("db", "non", "existing", "key2")),
753 default=u("20"))) 753 default=u("20")))
754 754
755 def test35_keysl(self):
756 cfg = self._load(os.path.join(TESTDATADIR, "conf20.yml"))
757 self.assertEqual(
758 set([u"domain", u"localedir", u"fallback", u"cache",]),
759 set(cfg.getkeysl(u"intl")))
760
761 def test36_keys(self):
762 cfg = self._load(os.path.join(TESTDATADIR, "conf20.yml"))
763 self.assertEqual(
764 set([u"name", u"pwd"]),
765 set(cfg.getkeys(u"db.user")))
766
755 767
756 class T02LoadAndMerge(_T02MixinLoadAndMerge, unittest.TestCase): 768 class T02LoadAndMerge(_T02MixinLoadAndMerge, unittest.TestCase):
757 769
758 def setUp(self): 770 def setUp(self):
759 self._load = configmix.load 771 self._load = configmix.load
1469 self.assertTrue(sjcfg._path) 1481 self.assertTrue(sjcfg._path)
1470 self.assertTrue(sjcfg._pathstr) 1482 self.assertTrue(sjcfg._pathstr)
1471 1483
1472 self.assertEqual(0x20, sjcfg.getintvar_s(u"key3")) 1484 self.assertEqual(0x20, sjcfg.getintvar_s(u"key3"))
1473 1485
1486 def test_getkeys(self):
1487 cfg = configmix.load(os.path.join(TESTDATADIR, "conf10.py"))
1488 jcfg = cfg.jailed(root=u"tree1")
1489
1490 self.assertEqual(
1491 set([u"key4", u"key5", u"key6"]),
1492 set(jcfg.getkeysl(u"tree2")))
1493
1494 self.assertEqual(
1495 set([u"key4", u"key5", u"key6"]),
1496 set(jcfg.getkeys(u"tree2")))
1497
1498 self.assertEqual(
1499 set([u"key3", u"tree2"]),
1500 set(jcfg.getkeysl()))
1501
1474 1502
1475 if __name__ == "__main__": 1503 if __name__ == "__main__":
1476 unittest.main() 1504 unittest.main()