comparison tests/test.py @ 171:1ff11462a5c1

The associations from filename extensions to parsers are "fnmatch" style patterns now. Calling "configmix.set_loader" prepends to the currently defined associations and therefore gets the highest priority.
author Franz Glasner <f.glasner@feldmann-mg.com>
date Thu, 25 Apr 2019 17:00:09 +0200
parents bbf47bfb48a2
children 7cfdc972af42
comparison
equal deleted inserted replaced
170:c247a5dc35ed 171:1ff11462a5c1
310 def tearDown(self): 310 def tearDown(self):
311 self._reset() 311 self._reset()
312 312
313 def _reset(self): 313 def _reset(self):
314 configmix.clear_loader() 314 configmix.clear_loader()
315 for ext in configmix.default_loaders: 315 for pat, loader in configmix._default_loaders:
316 configmix.set_loader(ext, configmix.default_loaders[ext]) 316 configmix.set_loader(pat, loader)
317 317
318 def test01_additional(self): 318 def test01_additional(self):
319 configmix.set_loader(".conf", configmix.default_loaders[".yml"]) 319 configmix.set_loader("*.conf", configmix.get_default_loader("*.yml"))
320 cfg = configmix.load( 320 cfg = configmix.load(
321 os.path.join(TESTDATADIR, "conf1.ini"), 321 os.path.join(TESTDATADIR, "conf1.ini"),
322 os.path.join(TESTDATADIR, "conf30.conf")) 322 os.path.join(TESTDATADIR, "conf30.conf"))
323 self.assertEqual(u("Umlaute: ÄÖÜäöüß"), cfg.getvar_s("key7")) 323 self.assertEqual(u("Umlaute: ÄÖÜäöüß"), cfg.getvar_s("key7"))
324 self.assertEqual(u("new value"), cfg.getvar_s("key-new")) 324 self.assertEqual(u("new value"), cfg.getvar_s("key-new"))
325 325
326 def test02_only_style_wrong_style(self): 326 def test02_only_style_wrong_style(self):
327 configmix.clear_loader() 327 configmix.clear_loader()
328 configmix.set_loader(".conf", configmix.default_loaders[".yml"]) 328 configmix.set_loader("*.conf", configmix.get_default_loader("*.yml"))
329 329
330 def _ld(): 330 def _ld():
331 return configmix.load(os.path.join(TESTDATADIR, "conf1.ini"), 331 return configmix.load(os.path.join(TESTDATADIR, "conf1.ini"),
332 os.path.join(TESTDATADIR, "conf30.conf")) 332 os.path.join(TESTDATADIR, "conf30.conf"))
333 333
334 self.assertRaises(ValueError, _ld) 334 self.assertRaises(ValueError, _ld)
335 335
336 def test03_only_style_corrrect_style(self): 336 def test03_only_style_corrrect_style(self):
337 configmix.clear_loader() 337 configmix.clear_loader()
338 configmix.set_loader(".conf", configmix.default_loaders[".yml"]) 338 configmix.set_loader("*.conf", configmix.get_default_loader("*.yml"))
339 cfg = configmix.load(os.path.join(TESTDATADIR, "conf30.conf")) 339 cfg = configmix.load(os.path.join(TESTDATADIR, "conf30.conf"))
340 self.assertEqual(u("new value"), cfg.getvar_s("key-new")) 340 self.assertEqual(u("new value"), cfg.getvar_s("key-new"))
341 341
342 def _g(): 342 def _g():
343 return cfg.getvar_s("key7") 343 return cfg.getvar_s("key7")