update sqlite storage
This commit is contained in:
@ -210,6 +210,19 @@ def test_config_impl_get_path_by_opt():
|
||||
# assert str(config) == '[od]'
|
||||
|
||||
|
||||
def to_tuple(val):
|
||||
ret = []
|
||||
for v in val:
|
||||
t = []
|
||||
for w in v:
|
||||
if isinstance(w, list):
|
||||
t.append(tuple(w))
|
||||
else:
|
||||
t.append(w)
|
||||
ret.append(tuple(t))
|
||||
return tuple(ret)
|
||||
|
||||
|
||||
def test_get_modified_values():
|
||||
g1 = IntOption('g1', '', 1)
|
||||
g2 = StrOption('g2', '', 'héhé')
|
||||
@ -221,21 +234,21 @@ def test_get_modified_values():
|
||||
root = OptionDescription('root', '', [d1])
|
||||
config = Config(root)
|
||||
api = getapi(config)
|
||||
assert api.value.exportation() == ((), (), (), ())
|
||||
assert to_tuple(api.value.exportation()) == ((), (), (), ())
|
||||
api.option('od.g5').value.set('yes')
|
||||
assert api.value.exportation() == (('od.g5',), (None,), ('yes',), ('user',))
|
||||
assert to_tuple(api.value.exportation()) == (('od.g5',), (None,), ('yes',), ('user',))
|
||||
api.option('od.g4').value.set(True)
|
||||
assert api.value.exportation() == (('od.g5', 'od.g4'), (None, None), ('yes', True), ('user', 'user'))
|
||||
assert to_tuple(api.value.exportation()) == (('od.g5', 'od.g4'), (None, None), ('yes', True), ('user', 'user'))
|
||||
api.option('od.g4').value.reset()
|
||||
assert api.value.exportation() == (('od.g5',), (None,), ('yes',), ('user',))
|
||||
assert to_tuple(api.value.exportation()) == (('od.g5',), (None,), ('yes',), ('user',))
|
||||
api.option('od.g6').value.set([undefined])
|
||||
assert api.value.exportation() == (('od.g5', 'od.g6'), (None, None), ('yes', (None,)), ('user', 'user'))
|
||||
assert to_tuple(api.value.exportation()) == (('od.g5', 'od.g6'), (None, None), ('yes', (None,)), ('user', 'user'))
|
||||
api.option('od.g6').value.set([])
|
||||
assert api.value.exportation() == (('od.g5', 'od.g6'), (None, None), ('yes', tuple()), ('user', 'user'))
|
||||
assert to_tuple(api.value.exportation()) == (('od.g5', 'od.g6'), (None, None), ('yes', tuple()), ('user', 'user'))
|
||||
api.option('od.g6').value.set(['3'])
|
||||
assert api.value.exportation() == (('od.g5', 'od.g6'), (None, None), ('yes', ('3',)), ('user', 'user'))
|
||||
assert to_tuple(api.value.exportation()) == (('od.g5', 'od.g6'), (None, None), ('yes', ('3',)), ('user', 'user'))
|
||||
api.option('od.g6').value.set([])
|
||||
assert api.value.exportation() == (('od.g5', 'od.g6'), (None, None), ('yes', tuple()), ('user', 'user'))
|
||||
assert to_tuple(api.value.exportation()) == (('od.g5', 'od.g6'), (None, None), ('yes', tuple()), ('user', 'user'))
|
||||
|
||||
|
||||
#def test_has_value():
|
||||
|
@ -61,6 +61,8 @@ def test_duplicate():
|
||||
# raises(AssertionError, "_diff_conf(cfg, ncfg)")
|
||||
# ncfg.creole.general.numero_etab = 'oui'
|
||||
# _diff_conf(cfg, ncfg)
|
||||
def to_tuple(val):
|
||||
return tuple([tuple(v) for v in val])
|
||||
|
||||
|
||||
def test_duplicate_force_store_value():
|
||||
@ -69,8 +71,8 @@ def test_duplicate_force_store_value():
|
||||
conf2 = Config(descr)
|
||||
api = getapi(conf)
|
||||
api2 = getapi(conf2)
|
||||
assert api.value.exportation() == (('creole.general.wantref',), (None,), (False,), ('forced',))
|
||||
assert api2.value.exportation() == (('creole.general.wantref',), (None,), (False,), ('forced',))
|
||||
assert to_tuple(api.value.exportation()) == (('creole.general.wantref',), (None,), (False,), ('forced',))
|
||||
assert to_tuple(api2.value.exportation()) == (('creole.general.wantref',), (None,), (False,), ('forced',))
|
||||
api.option('creole.general.wantref').value.set(True)
|
||||
assert api.value.exportation() == (('creole.general.wantref',), (None,), (True,), ('user',))
|
||||
assert api2.value.exportation() == (('creole.general.wantref',), (None,), (False,), ('forced',))
|
||||
assert to_tuple(api.value.exportation()) == (('creole.general.wantref',), (None,), (True,), ('user',))
|
||||
assert to_tuple(api2.value.exportation()) == (('creole.general.wantref',), (None,), (False,), ('forced',))
|
||||
|
@ -12,6 +12,18 @@ from tiramisu import ChoiceOption, BoolOption, IntOption, FloatOption, \
|
||||
from tiramisu.error import PropertiesOptionError, ConfigError
|
||||
|
||||
|
||||
def compare(calculated, expected):
|
||||
def convert_list(val):
|
||||
if isinstance(val, list):
|
||||
val = tuple(val)
|
||||
return val
|
||||
# convert to tuple
|
||||
for idx in range(len(calculated[0])):
|
||||
right_idx = expected[0].index(calculated[0][idx])
|
||||
for typ in range(4):
|
||||
assert convert_list(calculated[typ][idx]) == expected[typ][right_idx]
|
||||
|
||||
|
||||
#____________________________________________________________
|
||||
#freeze
|
||||
def make_description_freeze():
|
||||
@ -146,11 +158,11 @@ def test_force_store_value():
|
||||
descr = make_description_freeze()
|
||||
conf = Config(descr)
|
||||
api = getapi(conf)
|
||||
assert api.value.exportation() == (('wantref', 'wantref2', 'wantref3'), (None, None, None), (False, False, (False,)), ('forced', 'forced', 'forced'))
|
||||
compare(api.value.exportation(), (('wantref', 'wantref2', 'wantref3'), (None, None, None), (False, False, (False,)), ('forced', 'forced', 'forced')))
|
||||
api.option('wantref').value.set(True)
|
||||
assert api.value.exportation() == (('wantref', 'wantref2', 'wantref3'), (None, None, None), (True, False, (False,)), ('user', 'forced', 'forced'))
|
||||
compare(api.value.exportation(), (('wantref', 'wantref2', 'wantref3'), (None, None, None), (True, False, (False,)), ('user', 'forced', 'forced')))
|
||||
api.option('wantref').value.reset()
|
||||
assert api.value.exportation() == (('wantref', 'wantref2', 'wantref3'), (None, None, None), (False, False, (False,)), ('forced', 'forced', 'forced'))
|
||||
compare(api.value.exportation(), (('wantref', 'wantref2', 'wantref3'), (None, None, None), (False, False, (False,)), ('forced', 'forced', 'forced')))
|
||||
|
||||
|
||||
def test_force_store_value_no_requirement():
|
||||
@ -183,28 +195,28 @@ def test_force_store_value_masterslaves_sub():
|
||||
descr = MasterSlaves("int", "", [b, c])
|
||||
odr = OptionDescription('odr', '', [descr])
|
||||
api = getapi(Config(odr))
|
||||
assert api.value.exportation() == (('int.int',), (None,), (tuple(),), ('forced',))
|
||||
compare(api.value.exportation(), (('int.int',), (None,), (tuple(),), ('forced',)))
|
||||
|
||||
|
||||
def test_force_store_value_callback():
|
||||
b = IntOption('int', 'Test int option', properties=('force_store_value',), callback=return_val)
|
||||
descr = OptionDescription("int", "", [b])
|
||||
api = getapi(Config(descr))
|
||||
assert api.value.exportation() == (('int',), (None,), (1,), ('forced',))
|
||||
compare(api.value.exportation(), (('int',), (None,), (1,), ('forced',)))
|
||||
|
||||
|
||||
def test_force_store_value_callback_params():
|
||||
b = IntOption('int', 'Test int option', properties=('force_store_value',), callback=return_val2, callback_params=Params(kwargs={'value': ParamValue(2)}))
|
||||
descr = OptionDescription("int", "", [b])
|
||||
api = getapi(Config(descr))
|
||||
assert api.value.exportation() == (('int',), (None,), (2,), ('forced',))
|
||||
compare(api.value.exportation(), (('int',), (None,), (2,), ('forced',)))
|
||||
|
||||
|
||||
def test_force_store_value_callback_params_2():
|
||||
b = IntOption('int', 'Test int option', properties=('force_store_value',), callback=return_val3, callback_params=Params(ParamContext(), {'value': ParamValue(2)}))
|
||||
descr = OptionDescription("int", "", [b])
|
||||
api = getapi(Config(descr))
|
||||
assert api.value.exportation() == (('int',), (None,), (2,), ('forced',))
|
||||
compare(api.value.exportation(), (('int',), (None,), (2,), ('forced',)))
|
||||
|
||||
|
||||
def test_force_store_value_callback_params_with_opt():
|
||||
@ -212,4 +224,4 @@ def test_force_store_value_callback_params_with_opt():
|
||||
b = IntOption('int', 'Test int option', properties=('force_store_value',), callback=return_val2, callback_params=Params(kwargs={'value': ParamOption(a)}))
|
||||
descr = OptionDescription("int", "", [a, b])
|
||||
api = getapi(Config(descr))
|
||||
assert api.value.exportation() == (('int',), (None,), (2,), ('forced',))
|
||||
compare(api.value.exportation(), (('int',), (None,), (2,), ('forced',)))
|
||||
|
@ -11,6 +11,18 @@ from tiramisu.api import TIRAMISU_VERSION
|
||||
from py.test import raises
|
||||
|
||||
|
||||
def compare(calculated, expected):
|
||||
def convert_list(val):
|
||||
if isinstance(val, list):
|
||||
val = tuple(val)
|
||||
return val
|
||||
# convert to tuple
|
||||
for idx in range(len(calculated[0])):
|
||||
right_idx = expected[0].index(calculated[0][idx])
|
||||
for typ in range(4):
|
||||
assert convert_list(calculated[typ][idx]) == expected[typ][right_idx]
|
||||
|
||||
|
||||
def make_description():
|
||||
numero_etab = StrOption('numero_etab', "identifiant de l'établissement")
|
||||
nom_machine = StrOption('nom_machine', "nom de la machine", default="eoleng")
|
||||
@ -513,23 +525,23 @@ def test_values_with_master_and_slaves_master_pop():
|
||||
assert api.option('ip_admin_eth0.ip_admin_eth0').value.get() == ["192.168.230.145", "192.168.230.146"]
|
||||
assert api.option('ip_admin_eth0.netmask_admin_eth0', 0).value.get() == None
|
||||
assert api.option('ip_admin_eth0.netmask_admin_eth0', 1).value.get() == '255.255.0.0'
|
||||
assert api.value.exportation() == (('ip_admin_eth0.ip_admin_eth0', 'ip_admin_eth0.netmask_admin_eth0'), (None, (1,)), (('192.168.230.145', '192.168.230.146'), ('255.255.0.0',)), ('user', ('user',)))
|
||||
compare(api.value.exportation(), (('ip_admin_eth0.ip_admin_eth0', 'ip_admin_eth0.netmask_admin_eth0'), (None, (1,)), (('192.168.230.145', '192.168.230.146'), ('255.255.0.0',)), ('user', ('user',))))
|
||||
api.option('ip_admin_eth0.ip_admin_eth0').value.pop(0)
|
||||
assert api.value.exportation() == (('ip_admin_eth0.ip_admin_eth0', 'ip_admin_eth0.netmask_admin_eth0'), (None, (0,)), (('192.168.230.146',), ('255.255.0.0',)), ('user', ('user',)))
|
||||
compare(api.value.exportation(), (('ip_admin_eth0.ip_admin_eth0', 'ip_admin_eth0.netmask_admin_eth0'), (None, (0,)), (('192.168.230.146',), ('255.255.0.0',)), ('user', ('user',))))
|
||||
assert api.option('ip_admin_eth0.ip_admin_eth0').value.get() == ["192.168.230.146"]
|
||||
assert api.option('ip_admin_eth0.netmask_admin_eth0', 0).value.get() == '255.255.0.0'
|
||||
api.option('ip_admin_eth0.ip_admin_eth0').value.set(['192.168.230.146', "192.168.230.145", "192.168.230.146", "192.168.230.147", "192.168.230.148", "192.168.230.149"])
|
||||
api.option('ip_admin_eth0.netmask_admin_eth0', 3).value.set('255.255.0.0')
|
||||
api.option('ip_admin_eth0.netmask_admin_eth0', 4).value.set('255.255.0.0')
|
||||
assert api.value.exportation() == (('ip_admin_eth0.ip_admin_eth0', 'ip_admin_eth0.netmask_admin_eth0'), (None, (0, 3, 4)), (('192.168.230.146', "192.168.230.145", "192.168.230.146", "192.168.230.147", "192.168.230.148", "192.168.230.149"), ('255.255.0.0', '255.255.0.0', '255.255.0.0')), ('user', ('user', 'user', 'user')))
|
||||
compare(api.value.exportation(), (('ip_admin_eth0.ip_admin_eth0', 'ip_admin_eth0.netmask_admin_eth0'), (None, (0, 3, 4)), (('192.168.230.146', "192.168.230.145", "192.168.230.146", "192.168.230.147", "192.168.230.148", "192.168.230.149"), ('255.255.0.0', '255.255.0.0', '255.255.0.0')), ('user', ('user', 'user', 'user'))))
|
||||
api.option('ip_admin_eth0.ip_admin_eth0').value.pop(5)
|
||||
assert api.value.exportation() == (('ip_admin_eth0.ip_admin_eth0', 'ip_admin_eth0.netmask_admin_eth0'), (None, (0, 3, 4)), (('192.168.230.146', "192.168.230.145", "192.168.230.146", "192.168.230.147", "192.168.230.148"), ('255.255.0.0', '255.255.0.0', '255.255.0.0')), ('user', ('user', 'user', 'user')))
|
||||
compare(api.value.exportation(), (('ip_admin_eth0.ip_admin_eth0', 'ip_admin_eth0.netmask_admin_eth0'), (None, (0, 3, 4)), (('192.168.230.146', "192.168.230.145", "192.168.230.146", "192.168.230.147", "192.168.230.148"), ('255.255.0.0', '255.255.0.0', '255.255.0.0')), ('user', ('user', 'user', 'user'))))
|
||||
api.option('ip_admin_eth0.ip_admin_eth0').value.pop(2)
|
||||
assert api.value.exportation() == (('ip_admin_eth0.ip_admin_eth0', 'ip_admin_eth0.netmask_admin_eth0'), (None, (0, 2, 3)), (('192.168.230.146', "192.168.230.145", "192.168.230.147", "192.168.230.148"), ('255.255.0.0', '255.255.0.0', '255.255.0.0')), ('user', ('user', 'user', 'user')))
|
||||
compare(api.value.exportation(), (('ip_admin_eth0.ip_admin_eth0', 'ip_admin_eth0.netmask_admin_eth0'), (None, (0, 2, 3)), (('192.168.230.146', "192.168.230.145", "192.168.230.147", "192.168.230.148"), ('255.255.0.0', '255.255.0.0', '255.255.0.0')), ('user', ('user', 'user', 'user'))))
|
||||
api.option('ip_admin_eth0.ip_admin_eth0').value.pop(2)
|
||||
assert api.value.exportation() == (('ip_admin_eth0.ip_admin_eth0', 'ip_admin_eth0.netmask_admin_eth0'), (None, (0, 2)), (('192.168.230.146', "192.168.230.145", "192.168.230.148"), ('255.255.0.0', '255.255.0.0')), ('user', ('user', 'user')))
|
||||
compare(api.value.exportation(), (('ip_admin_eth0.ip_admin_eth0', 'ip_admin_eth0.netmask_admin_eth0'), (None, (0, 2)), (('192.168.230.146', "192.168.230.145", "192.168.230.148"), ('255.255.0.0', '255.255.0.0')), ('user', ('user', 'user'))))
|
||||
api.option('ip_admin_eth0.ip_admin_eth0').value.pop(2)
|
||||
assert api.value.exportation() == (('ip_admin_eth0.ip_admin_eth0', 'ip_admin_eth0.netmask_admin_eth0'), (None, (0,)), (('192.168.230.146', "192.168.230.145"), ('255.255.0.0',)), ('user', ('user',)))
|
||||
compare(api.value.exportation(), (('ip_admin_eth0.ip_admin_eth0', 'ip_admin_eth0.netmask_admin_eth0'), (None, (0,)), (('192.168.230.146', "192.168.230.145"), ('255.255.0.0',)), ('user', ('user',))))
|
||||
|
||||
|
||||
def test_values_with_master_owner():
|
||||
@ -610,14 +622,31 @@ def test_groups_with_master_get_modified_value():
|
||||
maconfig = OptionDescription('toto', '', [interface1])
|
||||
api = getapi(Config(maconfig))
|
||||
api.property.read_write()
|
||||
assert api.value.exportation() == ((), (), (), ())
|
||||
compare(api.value.exportation(), ((), (), (), ()))
|
||||
api.option('ip_admin_eth0.ip_admin_eth0').value.set(['192.168.1.1'])
|
||||
assert api.value.exportation() == (('ip_admin_eth0.ip_admin_eth0',), (None,), (('192.168.1.1',),), ('user',))
|
||||
compare(api.value.exportation(), (('ip_admin_eth0.ip_admin_eth0',), (None,), (('192.168.1.1',),), ('user',)))
|
||||
api.option('ip_admin_eth0.netmask_admin_eth0', 0).value.set('255.255.255.255')
|
||||
assert api.value.exportation() == (('ip_admin_eth0.ip_admin_eth0', 'ip_admin_eth0.netmask_admin_eth0',), (None, (0,)), (('192.168.1.1',), ('255.255.255.255',)), ('user', ('user',)))
|
||||
compare(api.value.exportation(), (('ip_admin_eth0.ip_admin_eth0', 'ip_admin_eth0.netmask_admin_eth0',), (None, (0,)), (('192.168.1.1',), ('255.255.255.255',)), ('user', ('user',))))
|
||||
api.option('ip_admin_eth0.ip_admin_eth0').value.set(['192.168.1.1', '192.168.1.1'])
|
||||
api.option('ip_admin_eth0.netmask_admin_eth0', 1).value.set('255.255.255.255')
|
||||
assert api.value.exportation() == (('ip_admin_eth0.ip_admin_eth0', 'ip_admin_eth0.netmask_admin_eth0',), (None, (0, 1)), (('192.168.1.1', '192.168.1.1'), ('255.255.255.255', '255.255.255.255')), ('user', ('user', 'user')))
|
||||
compare(api.value.exportation(), (('ip_admin_eth0.ip_admin_eth0', 'ip_admin_eth0.netmask_admin_eth0',), (None, (0, 1)), (('192.168.1.1', '192.168.1.1'), ('255.255.255.255', '255.255.255.255')), ('user', ('user', 'user'))))
|
||||
|
||||
|
||||
def test_groups_with_master_importation():
|
||||
ip_admin_eth0 = StrOption('ip_admin_eth0', "ip réseau autorisé", multi=True)
|
||||
netmask_admin_eth0 = StrOption('netmask_admin_eth0', "masque du sous-réseau", multi=True)
|
||||
interface1 = MasterSlaves('ip_admin_eth0', '', [ip_admin_eth0, netmask_admin_eth0])
|
||||
#interface1.impl_set_group_type(groups.master)
|
||||
maconfig = OptionDescription('toto', '', [interface1])
|
||||
api = getapi(Config(maconfig))
|
||||
api.property.read_write()
|
||||
api.value.importation((('ip_admin_eth0.ip_admin_eth0', 'ip_admin_eth0.netmask_admin_eth0',), (None, (0, 1)), (('192.168.1.1', '192.168.1.0'), ('255.255.255.255', '255.255.255.0')), ('user', ('user', 'user'))))
|
||||
api.option('ip_admin_eth0.ip_admin_eth0').value.get() == ['192.168.1.1', '192.168.1.0']
|
||||
api.option('ip_admin_eth0.netmask_admin_eth0', 0).value.get() == '255.255.255.255'
|
||||
api.option('ip_admin_eth0.netmask_admin_eth0', 1).value.get() == '255.255.255.0'
|
||||
api.option('ip_admin_eth0.ip_admin_eth0').owner.get() == 'user'
|
||||
api.option('ip_admin_eth0.netmask_admin_eth0', 0).owner.get() == 'user'
|
||||
api.option('ip_admin_eth0.netmask_admin_eth0', 1).owner.get() == 'user'
|
||||
|
||||
|
||||
def test_wrong_index():
|
||||
|
Reference in New Issue
Block a user