Mercurial > hgrepos > Python > libs > ConfigMix
diff tests/test.py @ 251:2a8dcab2de8c
Do not implicitely convert a configuration value to text if the value is the result of just a variable expansion.
This is technically a breaking change. But no known client code uses the old
behaviour.
| author | Franz Glasner <fzglas.hg@dom66.de> |
|---|---|
| date | Tue, 07 Jul 2020 22:21:27 +0200 |
| parents | b2c75efad9e4 |
| children | af371f9c016d |
line wrap: on
line diff
--- a/tests/test.py Tue Jul 07 09:27:24 2020 +0200 +++ b/tests/test.py Tue Jul 07 22:21:27 2020 +0200 @@ -391,7 +391,7 @@ cfg = configmix.load(os.path.join(TESTDATADIR, "conf1.ini"), os.path.join(TESTDATADIR, "conf30.conf")) self.assertRaises(KeyError, cfg.getvar_s, "key-new") - self.assertRaises(KeyError, cfg.getvar_s, "key1") + self.assertRaises(KeyError, cfg.getvar_s, "key1") def test03_only_style_corrrect_style(self): configmix.clear_assoc() @@ -431,5 +431,35 @@ self.assertRaises(KeyError, _ld) +class T05SubstituteExpand(unittest.TestCase): + + def setUp(self): + self._reset() + + def tearDown(self): + self._reset() + + def _reset(self): + configmix.clear_assoc() + for pat, fmode in configmix.DEFAULT_ASSOC: + configmix.set_assoc(pat, fmode) + + def test01_expand_int_ini(self): + cfg = configmix.load(os.path.join(TESTDATADIR, "conf1.ini")) + self.assertEqual(2, cfg.getvar_s("key100")) + + def test02_expand_int_indirect_ini(self): + cfg = configmix.load(os.path.join(TESTDATADIR, "conf1.ini")) + self.assertEqual(2, cfg.getvar_s("key102")) + + def test03_expand_int2str_ini(self): + cfg = configmix.load(os.path.join(TESTDATADIR, "conf1.ini")) + self.assertEqual("the 2 value", cfg.getvar_s("key101")) + + def test04_expand_intint2str_ini(self): + cfg = configmix.load(os.path.join(TESTDATADIR, "conf1.ini")) + self.assertEqual("22", cfg.getvar_s("key103")) + + if __name__ == "__main__": unittest.main()
