diff -r d0fcb1cde990 -r 0d134b173cb1 iro/tests/config.py --- a/iro/tests/config.py Fri Mar 30 11:49:13 2012 +0200 +++ b/iro/tests/config.py Fri Mar 30 15:55:44 2012 +0200 @@ -3,12 +3,15 @@ import signal import io import ConfigParser -from iro import config, error +from collections import OrderedDict +from functools import partial + +from iro import config, error, validate from iro.offer.provider import Provider, providers class TestModuleConfig(unittest.TestCase): '''test config class''' - + def setUp(self): self._reloadList=config.configParser.reloadList config.configParser.reloadList=[] @@ -76,6 +79,8 @@ class TestRead(unittest.TestCase): + + def tearDown(self): for s in config.configParser.sections(): config.configParser.remove_section(s) @@ -137,8 +142,8 @@ v=Mock() class TestProvider(Provider): def __init__(self,name): - Provider.__init__(self,name) - self.options.update({"test":config.Option(v)}) + o = [("test",config.Option(v))] + Provider.__init__(self, name, options=o) providers["test"]=TestProvider try: sample_config = """[p] @@ -158,11 +163,19 @@ class TestConfig(unittest.TestCase): + + def config(self,name): + return config.Config(name, OrderedDict([ + ("dburl",config.Option(lambda x,y:x,long="Connection URL to database",must=True)), + ("port",config.Option(partial(validate.vInteger,minv=0),long="Port under that twisted is running",must=True)), + ]) + ) + def testSame(self): - c1 = config.Config("1") + c1 = self.config("1") c1.port = 1 c1.dburl = "dburl1" - c2 = config.Config("2") + c2 = self.config("2") c2.port = 1 c2.dburl = "dburl1" self.assertTrue(c1.same(c2)) @@ -177,15 +190,15 @@ self.assertFalse(c1.same(c2)) def testSampleConf(self): - c1 = config.Config("1") + c1 = self.config("1") self.assertEqual(c1.sampleConf(),["[1]", "# Connection URL to database", "dburl = ","", "# Port under that twisted is running", "port = ",""]) - def testsampleConfDefault(self): - c1 = config.Config("1") + def testSampleConfDefault(self): + c1 = self.config("1") c1.options["port"].default = 12345 c1.options["port"].must = False c1.options["dburl"].default = True