# HG changeset patch # User Franz Glasner # Date 1556872974 -7200 # Node ID d1103f0f9166e10f1ef771b65c3e7da0bf9b55f6 # Parent 3c0ff52b2bdb18fb0a492dee4a6490a469793993 Unit-tests with the file-mode scanner diff -r 3c0ff52b2bdb -r d1103f0f9166 tests/data/no-mode.conf --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tests/data/no-mode.conf Fri May 03 10:42:54 2019 +0200 @@ -0,0 +1,4 @@ +%YAML 1.1 +--- + +key-new: new value diff -r 3c0ff52b2bdb -r d1103f0f9166 tests/data/unknown-mode.conf --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tests/data/unknown-mode.conf Fri May 03 10:42:54 2019 +0200 @@ -0,0 +1,5 @@ +# -*- coding: utf-8; mode: non-existing; indent-tabs-mode: nil; -*- +%YAML 1.1 +--- + +key-new: new value diff -r 3c0ff52b2bdb -r d1103f0f9166 tests/test.py --- a/tests/test.py Fri May 03 09:46:43 2019 +0200 +++ b/tests/test.py Fri May 03 10:42:54 2019 +0200 @@ -344,6 +344,32 @@ self.assertRaises(KeyError, _g) + def test04_determine_mode(self): + configmix.clear_assoc() + configmix.set_assoc("*.conf", configmix.try_determine_filemode) + cfg = configmix.load(os.path.join(TESTDATADIR, "conf30.conf")) + self.assertEqual(u("new value"), cfg.getvar_s("key-new")) + + self.assertRaises(KeyError, cfg.getvar_s, "key7") + + def test05_try_determine_mode_none(self): + configmix.clear_assoc() + configmix.set_assoc("*.conf", configmix.try_determine_filemode) + + def _ld(): + return configmix.load(os.path.join(TESTDATADIR, "no-mode.conf")) + + self.assertRaises(ValueError, _ld) + + def test06_try_determine_mode_unknown(self): + configmix.clear_assoc() + configmix.set_assoc("*.conf", configmix.try_determine_filemode) + + def _ld(): + return configmix.load(os.path.join(TESTDATADIR, "unknown-mode.conf")) + + self.assertRaises(KeyError, _ld) + if __name__ == "__main__": unittest.main()