add SlaveError for slave's length
This commit is contained in:
parent
410add6a2a
commit
d7b5d9dc16
@ -4,6 +4,7 @@ from tiramisu.setting import groups, owners
|
|||||||
from tiramisu.config import Config
|
from tiramisu.config import Config
|
||||||
from tiramisu.option import ChoiceOption, BoolOption, IntOption, \
|
from tiramisu.option import ChoiceOption, BoolOption, IntOption, \
|
||||||
StrOption, OptionDescription
|
StrOption, OptionDescription
|
||||||
|
from tiramisu.error import SlaveError
|
||||||
|
|
||||||
from py.test import raises
|
from py.test import raises
|
||||||
|
|
||||||
@ -185,18 +186,18 @@ def test_values_with_master_and_slaves_slave():
|
|||||||
maconfig = OptionDescription('toto', '', [interface1])
|
maconfig = OptionDescription('toto', '', [interface1])
|
||||||
cfg = Config(maconfig)
|
cfg = Config(maconfig)
|
||||||
assert cfg.ip_admin_eth0.netmask_admin_eth0 == []
|
assert cfg.ip_admin_eth0.netmask_admin_eth0 == []
|
||||||
raises(ValueError, "cfg.ip_admin_eth0.netmask_admin_eth0 = ['255.255.255.0']")
|
raises(SlaveError, "cfg.ip_admin_eth0.netmask_admin_eth0 = ['255.255.255.0']")
|
||||||
cfg.ip_admin_eth0.ip_admin_eth0.append("192.168.230.145")
|
cfg.ip_admin_eth0.ip_admin_eth0.append("192.168.230.145")
|
||||||
cfg.ip_admin_eth0.netmask_admin_eth0 = ['255.255.255.0']
|
cfg.ip_admin_eth0.netmask_admin_eth0 = ['255.255.255.0']
|
||||||
cfg.ip_admin_eth0.netmask_admin_eth0[0] = '255.255.255.0'
|
cfg.ip_admin_eth0.netmask_admin_eth0[0] = '255.255.255.0'
|
||||||
raises(ValueError, "cfg.ip_admin_eth0.netmask_admin_eth0 = ['255.255.255.0', '255.255.255.0']")
|
raises(SlaveError, "cfg.ip_admin_eth0.netmask_admin_eth0 = ['255.255.255.0', '255.255.255.0']")
|
||||||
raises(ValueError, "cfg.ip_admin_eth0.netmask_admin_eth0 = []")
|
raises(SlaveError, "cfg.ip_admin_eth0.netmask_admin_eth0 = []")
|
||||||
del(cfg.ip_admin_eth0.netmask_admin_eth0)
|
del(cfg.ip_admin_eth0.netmask_admin_eth0)
|
||||||
cfg.ip_admin_eth0.netmask_admin_eth0 = ['255.255.255.0']
|
cfg.ip_admin_eth0.netmask_admin_eth0 = ['255.255.255.0']
|
||||||
cfg.ip_admin_eth0.ip_admin_eth0.append("192.168.230.145")
|
cfg.ip_admin_eth0.ip_admin_eth0.append("192.168.230.145")
|
||||||
assert cfg.ip_admin_eth0.netmask_admin_eth0 == ['255.255.255.0', None]
|
assert cfg.ip_admin_eth0.netmask_admin_eth0 == ['255.255.255.0', None]
|
||||||
cfg.ip_admin_eth0.netmask_admin_eth0 = ['255.255.255.0', '255.255.255.0']
|
cfg.ip_admin_eth0.netmask_admin_eth0 = ['255.255.255.0', '255.255.255.0']
|
||||||
raises(ValueError, 'cfg.ip_admin_eth0.netmask_admin_eth0.pop(1)')
|
raises(SlaveError, 'cfg.ip_admin_eth0.netmask_admin_eth0.pop(1)')
|
||||||
|
|
||||||
|
|
||||||
def test_values_with_master_and_slaves_master():
|
def test_values_with_master_and_slaves_master():
|
||||||
@ -210,6 +211,6 @@ def test_values_with_master_and_slaves_master():
|
|||||||
cfg.ip_admin_eth0.ip_admin_eth0 = ["192.168.230.145"]
|
cfg.ip_admin_eth0.ip_admin_eth0 = ["192.168.230.145"]
|
||||||
cfg.ip_admin_eth0.ip_admin_eth0 = ["192.168.230.145", "192.168.230.145"]
|
cfg.ip_admin_eth0.ip_admin_eth0 = ["192.168.230.145", "192.168.230.145"]
|
||||||
cfg.ip_admin_eth0.netmask_admin_eth0 = ['255.255.255.0', '255.255.255.0']
|
cfg.ip_admin_eth0.netmask_admin_eth0 = ['255.255.255.0', '255.255.255.0']
|
||||||
raises(ValueError, 'cfg.ip_admin_eth0.ip_admin_eth0 = ["192.168.230.145"]')
|
raises(SlaveError, 'cfg.ip_admin_eth0.ip_admin_eth0 = ["192.168.230.145"]')
|
||||||
cfg.ip_admin_eth0.ip_admin_eth0.pop(1)
|
cfg.ip_admin_eth0.ip_admin_eth0.pop(1)
|
||||||
assert cfg.ip_admin_eth0.ip_admin_eth0 == ["192.168.230.145"]
|
assert cfg.ip_admin_eth0.ip_admin_eth0 == ["192.168.230.145"]
|
||||||
|
@ -250,7 +250,7 @@ class Setting(object):
|
|||||||
if opt_or_descr in self._cache:
|
if opt_or_descr in self._cache:
|
||||||
t = time()
|
t = time()
|
||||||
props, raise_text, created = self._cache[opt_or_descr]
|
props, raise_text, created = self._cache[opt_or_descr]
|
||||||
if t - created < expires_time:
|
if t < created:
|
||||||
properties = props
|
properties = props
|
||||||
is_cached = True
|
is_cached = True
|
||||||
if not is_cached:
|
if not is_cached:
|
||||||
@ -318,7 +318,7 @@ class Setting(object):
|
|||||||
|
|
||||||
def _set_cache(self, opt, props, raise_text):
|
def _set_cache(self, opt, props, raise_text):
|
||||||
if self.has_property('expire'):
|
if self.has_property('expire'):
|
||||||
self._cache[opt] = (props, raise_text, time())
|
self._cache[opt] = (props, raise_text, time() + expires_time)
|
||||||
|
|
||||||
def reset_cache(self):
|
def reset_cache(self):
|
||||||
self._cache = {}
|
self._cache = {}
|
||||||
|
@ -86,7 +86,7 @@ class Values(object):
|
|||||||
if opt in self._cache:
|
if opt in self._cache:
|
||||||
t = time()
|
t = time()
|
||||||
value, created = self._cache[opt]
|
value, created = self._cache[opt]
|
||||||
if t - created < expires_time:
|
if t < created:
|
||||||
return value
|
return value
|
||||||
val = self._getitem(opt, validate, force_permissive, force_properties)
|
val = self._getitem(opt, validate, force_permissive, force_properties)
|
||||||
self._set_cache(opt, val)
|
self._set_cache(opt, val)
|
||||||
@ -173,7 +173,7 @@ class Values(object):
|
|||||||
|
|
||||||
def _set_cache(self, opt, val):
|
def _set_cache(self, opt, val):
|
||||||
if self.context.cfgimpl_get_settings().has_property('expire'):
|
if self.context.cfgimpl_get_settings().has_property('expire'):
|
||||||
self._cache[opt] = (val, time())
|
self._cache[opt] = (val, time() + expires_time)
|
||||||
|
|
||||||
def reset_cache(self):
|
def reset_cache(self):
|
||||||
self._cache = {}
|
self._cache = {}
|
||||||
|
Loading…
Reference in New Issue
Block a user