--- a/tests/config.py Thu Feb 23 16:59:49 2012 +0100
+++ b/tests/config.py Sat Feb 25 16:12:07 2012 +0100
@@ -3,25 +3,29 @@
import signal
import io
import ConfigParser
-from iro import config
+from iro import config, error
from iro.offer.provider import Provider, providers
class TestConfig(unittest.TestCase):
'''test config class'''
def setUp(self):
- self._reloadList=config.config.reloadList
- config.config.reloadList=[]
+ self._reloadList=config.configParser.reloadList
+ config.configParser.reloadList=[]
def tearDown(self):
- config.config.reloadList = self._reloadList
+ config.configParser.reloadList = self._reloadList
- @patch('iro.config.config')
- def testReadConfig(self,pConfig):
+ @patch('iro.config.main')
+ @patch('iro.config.configParser')
+ def testReadConfig(self,pConfig,pMain):
+ pMain.read = False
config.readConfig()
- self.assertEqual([i[0] for i in pConfig.method_calls],["read","reload"])
+ self.assertEqual([i[0] for i in pConfig.method_calls],["read","reload","items"])
pConfig.read.assert_called_once_with(config.confFiles)
+ pConfig.items.assert_called_once_with("main")
pConfig.reload.assert_called_once_with()
+ self.assertEqual(pMain.load.called,1)
@patch('signal.signal')
@patch('iro.config.readConfig')
@@ -35,93 +39,97 @@
def testRegisterReload(self):
def x():
pass
- config.config.registerReload(x)
- self.assertEqual(config.config.reloadList,[x])
+ config.configParser.registerReload(x)
+ self.assertEqual(config.configParser.reloadList,[x])
def testReload(self):
x = Mock()
- config.config.reloadList = [x]
- config.config.reload_()
+ config.configParser.reloadList = [x]
+ config.configParser.reload_()
x.assert_called_once_with()
class TestRead(unittest.TestCase):
def tearDown(self):
- for s in config.config.sections():
- config.config.remove_section(s)
+ for s in config.configParser.sections():
+ config.configParser.remove_section(s)
@patch('iro.config.ConfigParser.read')
def testMain(self,pRead):
sample_config = """[main]
hostname = localhost
port = 8000
+dburl = sdfdsafgsfdg
"""
- config.config.readfp(io.BytesIO(sample_config))
- config.config.read([])
- pRead.assert_called_once_with(config.config,[])
+ config.configParser.readfp(io.BytesIO(sample_config))
+ config.configParser.read([])
+ pRead.assert_called_once_with(config.configParser,[])
@patch('iro.config.ConfigParser.read')
def testMainBadPort(self,pRead):
sample_config = """[main]
hostname = localhost
port = -8000
+dburl = sadfaserasg
"""
- config.config.readfp(io.BytesIO(sample_config))
- self.assertRaises(config.ValidateException, config.config.read, [])
+ config.configParser.readfp(io.BytesIO(sample_config))
+ self.assertRaises(error.ValidateException, config.configParser.read, [])
@patch('iro.config.ConfigParser.read')
def testMainNoMust(self,pRead):
sample_config = """[main]
port = 8000
+dburl = asdfgdsrg
"""
- config.config.readfp(io.BytesIO(sample_config))
- self.assertRaises(ConfigParser.NoOptionError, config.config.read, [])
+ config.configParser.readfp(io.BytesIO(sample_config))
+ self.assertRaises(config.NeededOption, config.configParser.read, [])
@patch('iro.config.ConfigParser.read')
def testMust(self,pRead):
v=Mock()
- config.main["test"] = config.Option(v)
+ config.main.options["test"] = config.Option(v)
try:
sample_config = """[main]
hostname = localhost
+dburl = sdfawersdf
port = 8000
"""
- config.config.readfp(io.BytesIO(sample_config))
- config.config.read([])
+ config.configParser.readfp(io.BytesIO(sample_config))
+ config.configParser.read([])
self.assertEqual(v.called,0)
sample_config = """[main]
hostname = localhost
+dburl = adfgsdftsfg
port = 8000
test = foohu
"""
- config.config.readfp(io.BytesIO(sample_config))
- config.config.read([])
+ config.configParser.readfp(io.BytesIO(sample_config))
+ config.configParser.read([])
v.assert_called_once_with("foohu","test")
finally:
- del(config.main["test"])
+ del(config.main.options["test"])
@patch('iro.config.ConfigParser.read')
def testProviders(self, pRead):
v=Mock()
class TestProvider(Provider):
- def __init__(self,name,c):
- Provider.__init__(self,name,c)
+ def __init__(self,name):
+ Provider.__init__(self,name)
self.options.update({"test":config.Option(v)})
- self.loadConfig()
providers["test"]=TestProvider
try:
sample_config = """[p]
"""
- config.config.readfp(io.BytesIO(sample_config))
- self.assertRaises(ConfigParser.NoOptionError, config.config.read, [])
+ config.configParser.readfp(io.BytesIO(sample_config))
+ self.assertRaises(ConfigParser.NoOptionError, config.configParser.read, [])
self.assertEqual(v.called,0)
sample_config = """[p]
typ= test
test= foo
"""
- config.config.readfp(io.BytesIO(sample_config))
- config.config.read([])
+ config.configParser.readfp(io.BytesIO(sample_config))
+ config.configParser.read([])
v.assert_called_once_with("foo","test")
finally:
del(providers["test"])