Пример #1
0
    def test_versioning(self):
        with temp_filename() as filename:
            conf = Config(version=41)
            conf.add_section("foo")
            conf.set("foo", "bar", "quux")
            conf.write(filename)
            self.assertRaises(Error, conf.get_version)

            # old was 41, we have 42, so upgrade
            def func(config, old, new):
                if old < 42:
                    config.set("foo", "bar", "nope")

            conf = Config(version=42)
            conf.register_upgrade_function(func)
            conf.read(filename)
            self.assertEqual(conf.get_version(), 41)
            self.assertEqual(conf.get("foo", "bar"), "nope")

            # write doesn't change version
            conf.write(filename)
            self.assertEqual(conf.get_version(), 41)

            # but if we load again, it does
            conf.read(filename)
            self.assertEqual(conf.get_version(), 42)
Пример #2
0
    def test_versioning(self):
        with temp_filename() as filename:
            conf = Config(version=41)
            conf.add_section("foo")
            conf.set("foo", "bar", "quux")
            conf.write(filename)
            self.assertRaises(Error, conf.get_version)

            # old was 41, we have 42, so upgrade
            def func(config, old, new):
                if old < 42:
                    config.set("foo", "bar", "nope")
            conf = Config(version=42)
            conf.register_upgrade_function(func)
            conf.read(filename)
            self.assertEqual(conf.get_version(), 41)
            self.assertEqual(conf.get("foo", "bar"), "nope")

            # write doesn't change version
            conf.write(filename)
            self.assertEqual(conf.get_version(), 41)

            # but if we load again, it does
            conf.read(filename)
            self.assertEqual(conf.get_version(), 42)
Пример #3
0
    def test_setdefault_no_defaulting(self):
        conf = Config()
        conf.add_section("foo")

        self.failUnlessEqual(None, conf.get("foo", "bar", None))
        conf.set("foo", "bar", "blah")
        conf.setdefault("foo", "bar", "xxx")
        self.failUnlessEqual("blah", conf.get("foo", "bar"))
Пример #4
0
    def test_setdefault_no_defaulting(self):
        conf = Config()
        conf.add_section("foo")

        self.failUnlessEqual(None, conf.get("foo", "bar", None))
        conf.set("foo", "bar", "blah")
        conf.setdefault("foo", "bar", "xxx")
        self.failUnlessEqual("blah", conf.get("foo", "bar"))
Пример #5
0
 def test_reset(self):
     conf = Config()
     conf.defaults.add_section("player")
     conf.defaults.set("player", "backend", "blah")
     conf.set("player", "backend", "foo")
     self.assertEqual(conf.get("player", "backend"), "foo")
     conf.reset("player", "backend")
     self.assertEqual(conf.get("player", "backend"), "blah")
Пример #6
0
 def test_get_invalid_data(self):
     conf = Config()
     conf.add_section("foo")
     conf.set("foo", "bla", "xx;,,;\n\n\naa")
     self.assertTrue(conf.getboolean("foo", "bla", True))
     self.assertEqual(conf.getint("foo", "bla", 42), 42)
     self.assertEqual(conf.getfloat("foo", "bla", 1.5), 1.5)
     self.assertEqual(conf.getstringlist("foo", "bla", ["baz"]), ["baz"])
Пример #7
0
 def test_get_invalid_data(self):
     conf = Config()
     conf.add_section("foo")
     conf.set("foo", "bla", "xx;,,;\n\n\naa")
     self.assertTrue(conf.getboolean("foo", "bla", True))
     self.assertEqual(conf.getint("foo", "bla", 42), 42)
     self.assertEqual(conf.getfloat("foo", "bla", 1.5), 1.5)
     self.assertEqual(conf.getstringlist("foo", "bla", ["baz"]), ["baz"])
Пример #8
0
 def test_reset(self):
     conf = Config()
     conf.defaults.add_section("player")
     conf.defaults.set("player", "backend", "blah")
     conf.set("player", "backend", "foo")
     self.assertEqual(conf.get("player", "backend"), "foo")
     conf.reset("player", "backend")
     self.assertEqual(conf.get("player", "backend"), "blah")
Пример #9
0
 def test_initial_after_set(self):
     conf = Config()
     conf.add_section("player")
     conf.set("player", "backend", "orig")
     conf.defaults.set("player", "backend", "initial")
     self.assertEqual(conf.get("player", "backend"), "orig")
     self.assertEqual(conf.defaults.get("player", "backend"), "initial")
     conf.reset("player", "backend")
     self.assertEqual(conf.get("player", "backend"), "initial")
Пример #10
0
 def test_initial_after_set(self):
     conf = Config()
     conf.add_section("player")
     conf.set("player", "backend", "orig")
     conf.defaults.set("player", "backend", "initial")
     self.assertEqual(conf.get("player", "backend"), "orig")
     self.assertEqual(conf.defaults.get("player", "backend"), "initial")
     conf.reset("player", "backend")
     self.assertEqual(conf.get("player", "backend"), "initial")
Пример #11
0
    def test_getlist(self):
        conf = Config()
        conf.add_section("foo")
        self.assertEqual(conf.getlist("foo", "bar", ["arg"]), ["arg"])
        conf.set("foo", "bar", "abc,fo:o\\,bar")
        self.assertEqual(conf.getlist("foo", "bar"), ["abc", "fo:o,bar"])
        self.assertEqual(conf.getlist("foo", "bar", sep=":"),
                         ["abc,fo", "o\\,bar"])

        conf.set("foo", "bar", "")
        self.assertEqual(conf.getlist("foo", "bar"), [""])
Пример #12
0
    def test_getlist(self):
        conf = Config()
        conf.add_section("foo")
        self.assertEqual(conf.getlist("foo", "bar", ["arg"]), ["arg"])
        conf.set("foo", "bar", "abc,fo:o\\,bar")
        self.assertEqual(conf.getlist("foo", "bar"), ["abc", "fo:o,bar"])
        self.assertEqual(conf.getlist("foo", "bar", sep=":"),
                         ["abc,fo", "o\\,bar"])

        conf.set("foo", "bar", "")
        self.assertEqual(conf.getlist("foo", "bar"), [""])
Пример #13
0
 def test_options(self):
     conf = Config()
     self.assertRaises(Error, conf.options, "foo")
     conf.defaults.add_section("foo")
     self.assertEqual(conf.options("foo"), [])
     conf.defaults.set("foo", "bar", 1)
     conf.defaults.set("foo", "blah", 1)
     conf.set("foo", "blah", 1)
     conf.set("foo", "quux", 1)
     self.assertEqual(conf.options("foo"), ['blah', 'quux', 'bar'])
     conf.defaults.clear()
Пример #14
0
 def test_options(self):
     conf = Config()
     self.assertRaises(Error, conf.options, "foo")
     conf.defaults.add_section("foo")
     self.assertEqual(conf.options("foo"), [])
     conf.defaults.set("foo", "bar", 1)
     conf.defaults.set("foo", "blah", 1)
     conf.set("foo", "blah", 1)
     conf.set("foo", "quux", 1)
     self.assertEqual(conf.options("foo"), ['blah', 'quux', 'bar'])
     conf.defaults.clear()
Пример #15
0
    def test_get(self):
        conf = Config()
        conf.add_section("foo")

        conf.set("foo", "int", "1")
        conf.set("foo", "float", "1.25")
        conf.set("foo", "str", "foobar")
        conf.set("foo", "bool", "True")
        self.failUnlessEqual(conf.getint("foo", "int"), 1)
        self.failUnlessEqual(conf.getfloat("foo", "float"), 1.25)
        self.failUnlessEqual(conf.get("foo", "str"), "foobar")
        self.failUnlessEqual(conf.getboolean("foo", "bool"), True)
Пример #16
0
    def test_get(self):
        conf = Config()
        conf.add_section("foo")

        conf.set("foo", "int", "1")
        conf.set("foo", "float", "1.25")
        conf.set("foo", "str", "foobar")
        conf.set("foo", "bool", "True")
        self.failUnlessEqual(conf.getint("foo", "int"), 1)
        self.failUnlessEqual(conf.getfloat("foo", "float"), 1.25)
        self.failUnlessEqual(conf.get("foo", "str"), "foobar")
        self.failUnlessEqual(conf.getboolean("foo", "bool"), True)
Пример #17
0
 def test_set(self):
     conf = Config()
     conf.add_section("foo")
     conf.set("foo", "bar", 1)
     self.failUnlessEqual(conf.get("foo", "bar"), "1")
     self.failUnlessEqual(conf.getint("foo", "bar"), 1)
Пример #18
0
 def test_stringlist_invalid_encoding(self):
     conf = Config()
     conf.add_section("foo")
     conf.set("foo", "bar", "\xff\xff\xff\xff\xff\xff")
     self.assertRaises(Error, conf.getstringlist, "foo", "bar")
Пример #19
0
 def test_getint_float(self):
     conf = Config()
     conf.add_section("foo")
     conf.set("foo", "float", "1.25")
     self.assertEqual(conf.getint("foo", "float"), 1)
Пример #20
0
 def test_set_default_only(self):
     conf = Config()
     self.assertRaises(Error, conf.set, "foo", "bar", 1)
     conf.defaults.add_section("foo")
     conf.set("foo", "bar", 1)
Пример #21
0
 def test_getint_float(self):
     conf = Config()
     conf.add_section("foo")
     conf.set("foo", "float", "1.25")
     self.assertEqual(conf.getint("foo", "float"), 1)
Пример #22
0
 def test_stringlist_invalid_encoding(self):
     conf = Config()
     conf.add_section("foo")
     conf.set("foo", "bar", "\xff\xff\xff\xff\xff\xff")
     self.assertRaises(Error, conf.getstringlist, "foo", "bar")
Пример #23
0
 def test_set_default_only(self):
     conf = Config()
     self.assertRaises(Error, conf.set, "foo", "bar", 1)
     conf.defaults.add_section("foo")
     conf.set("foo", "bar", 1)
Пример #24
0
 def test_set(self):
     conf = Config()
     conf.add_section("foo")
     conf.set("foo", "bar", 1)
     self.failUnlessEqual(conf.get("foo", "bar"), "1")
     self.failUnlessEqual(conf.getint("foo", "bar"), 1)