add meta in option_bag
This commit is contained in:
@ -964,3 +964,100 @@ def test_path_properties_path_set_value():
|
||||
del ret[1]
|
||||
del ret[0]
|
||||
del ret
|
||||
|
||||
|
||||
def test_path_different_default():
|
||||
ip_admin_eth0 = NetworkOption('ip_admin_eth0', "ip", multi=True, default=['192.168.1.1'])
|
||||
interface0 = OptionDescription('ip_admin_eth0', '', [ip_admin_eth0])
|
||||
ip_admin_eth0 = NetworkOption('ip_admin_eth1', "ip", multi=True, default=['192.168.1.2'])
|
||||
interface1 = OptionDescription('ip_admin_eth0', '', [ip_admin_eth0])
|
||||
ip_admin_eth0 = NetworkOption('ip_admin_eth1', "ip", multi=True, default=['192.168.1.3'])
|
||||
interface2 = OptionDescription('ip_admin_eth0', '', [ip_admin_eth0])
|
||||
ip_admin_eth0 = NetworkOption('ip_admin_eth0', "ip", multi=True, default=['192.168.1.4'])
|
||||
ip_admin_eth1 = NetworkOption('ip_admin_eth1', "ip", multi=True, default=['192.168.1.5'])
|
||||
interface3 = OptionDescription('ip_admin_eth0', '', [ip_admin_eth0, ip_admin_eth1])
|
||||
ip_admin_eth0 = NetworkOption('ip_admin_eth0', "ip", multi=True, default=['192.168.1.6'])
|
||||
interface4 = OptionDescription('ip_admin_eth0', '', [ip_admin_eth0])
|
||||
conf1 = Config(interface0, session_id='conf1')
|
||||
conf1.property.read_write()
|
||||
conf2 = Config(interface1, session_id='conf2')
|
||||
conf2.property.read_write()
|
||||
path = PathConfig(interface2, [conf1, conf2], session_id='subpath1')
|
||||
path = PathConfig(interface3, [path], session_id='subpath2')
|
||||
path = PathConfig(interface4, [path])
|
||||
path.property.read_write()
|
||||
path.value.dict() == {'ip_admin_eth0': ['192.168.1.6']}
|
||||
path.config('subpath2').value.dict() == {'ip_admin_eth0': ['192.168.1.4'], 'ip_admin_eth1': ['192.168.1.5']}
|
||||
path.config('subpath2.subpath1').value.dict() == {'ip_admin_eth1': ['192.168.1.3']}
|
||||
path.config('subpath2.subpath1.conf2').value.dict() == {'ip_admin_eth1': ['192.168.1.2']}
|
||||
path.config('subpath2.subpath1.conf1').value.dict() == {'ip_admin_eth0': ['192.168.1.1']}
|
||||
#
|
||||
path.option('ip_admin_eth0').value.set(['192.168.1.7'])
|
||||
assert path.value.dict() == {'ip_admin_eth0': ['192.168.1.7']}
|
||||
assert path.config('subpath2').value.dict() == {'ip_admin_eth0': ['192.168.1.7'], 'ip_admin_eth1': ['192.168.1.5']}
|
||||
assert path.config('subpath2.subpath1').value.dict() == {'ip_admin_eth1': ['192.168.1.3']}
|
||||
assert path.config('subpath2.subpath1.conf2').value.dict() == {'ip_admin_eth1': ['192.168.1.2']}
|
||||
assert path.config('subpath2.subpath1.conf1').value.dict() == {'ip_admin_eth0': ['192.168.1.7']}
|
||||
#
|
||||
path.config('subpath2').option('ip_admin_eth0').value.set(['192.168.1.8'])
|
||||
assert path.value.dict() == {'ip_admin_eth0': ['192.168.1.7']}
|
||||
assert path.config('subpath2').value.dict() == {'ip_admin_eth0': ['192.168.1.8'], 'ip_admin_eth1': ['192.168.1.5']}
|
||||
assert path.config('subpath2.subpath1').value.dict() == {'ip_admin_eth1': ['192.168.1.3']}
|
||||
assert path.config('subpath2.subpath1.conf2').value.dict() == {'ip_admin_eth1': ['192.168.1.2']}
|
||||
assert path.config('subpath2.subpath1.conf1').value.dict() == {'ip_admin_eth0': ['192.168.1.8']}
|
||||
#
|
||||
raises(AttributeError, "path.config('subpath2.subpath1').option('ip_admin_eth0').value.set(['192.168.1.9'])")
|
||||
assert path.value.dict() == {'ip_admin_eth0': ['192.168.1.7']}
|
||||
assert path.config('subpath2').value.dict() == {'ip_admin_eth0': ['192.168.1.8'], 'ip_admin_eth1': ['192.168.1.5']}
|
||||
assert path.config('subpath2.subpath1').value.dict() == {'ip_admin_eth1': ['192.168.1.3']}
|
||||
assert path.config('subpath2.subpath1.conf2').value.dict() == {'ip_admin_eth1': ['192.168.1.2']}
|
||||
assert path.config('subpath2.subpath1.conf1').value.dict() == {'ip_admin_eth0': ['192.168.1.8']}
|
||||
#
|
||||
raises(AttributeError, "path.config('subpath2.subpath1.conf2').option('ip_admin_eth0').value.set(['192.168.1.9'])")
|
||||
assert path.value.dict() == {'ip_admin_eth0': ['192.168.1.7']}
|
||||
assert path.config('subpath2').value.dict() == {'ip_admin_eth0': ['192.168.1.8'], 'ip_admin_eth1': ['192.168.1.5']}
|
||||
assert path.config('subpath2.subpath1').value.dict() == {'ip_admin_eth1': ['192.168.1.3']}
|
||||
assert path.config('subpath2.subpath1.conf2').value.dict() == {'ip_admin_eth1': ['192.168.1.2']}
|
||||
assert path.config('subpath2.subpath1.conf1').value.dict() == {'ip_admin_eth0': ['192.168.1.8']}
|
||||
#
|
||||
path.config('subpath2.subpath1.conf1').option('ip_admin_eth0').value.set(['192.168.1.9'])
|
||||
assert path.value.dict() == {'ip_admin_eth0': ['192.168.1.7']}
|
||||
assert path.config('subpath2').value.dict() == {'ip_admin_eth0': ['192.168.1.8'], 'ip_admin_eth1': ['192.168.1.5']}
|
||||
assert path.config('subpath2.subpath1').value.dict() == {'ip_admin_eth1': ['192.168.1.3']}
|
||||
assert path.config('subpath2.subpath1.conf2').value.dict() == {'ip_admin_eth1': ['192.168.1.2']}
|
||||
assert path.config('subpath2.subpath1.conf1').value.dict() == {'ip_admin_eth0': ['192.168.1.9']}
|
||||
#
|
||||
raises(AttributeError, "path.option('ip_admin_eth1').value.set(['192.168.1.10'])")
|
||||
assert path.value.dict() == {'ip_admin_eth0': ['192.168.1.7']}
|
||||
assert path.config('subpath2').value.dict() == {'ip_admin_eth0': ['192.168.1.8'], 'ip_admin_eth1': ['192.168.1.5']}
|
||||
assert path.config('subpath2.subpath1').value.dict() == {'ip_admin_eth1': ['192.168.1.3']}
|
||||
assert path.config('subpath2.subpath1.conf2').value.dict() == {'ip_admin_eth1': ['192.168.1.2']}
|
||||
assert path.config('subpath2.subpath1.conf1').value.dict() == {'ip_admin_eth0': ['192.168.1.9']}
|
||||
#
|
||||
path.config('subpath2').option('ip_admin_eth1').value.set(['192.168.1.10'])
|
||||
assert path.value.dict() == {'ip_admin_eth0': ['192.168.1.7']}
|
||||
assert path.config('subpath2').value.dict() == {'ip_admin_eth0': ['192.168.1.8'], 'ip_admin_eth1': ['192.168.1.10']}
|
||||
assert path.config('subpath2.subpath1').value.dict() == {'ip_admin_eth1': ['192.168.1.10']}
|
||||
assert path.config('subpath2.subpath1.conf2').value.dict() == {'ip_admin_eth1': ['192.168.1.10']}
|
||||
assert path.config('subpath2.subpath1.conf1').value.dict() == {'ip_admin_eth0': ['192.168.1.9']}
|
||||
#
|
||||
path.config('subpath2.subpath1').option('ip_admin_eth1').value.set(['192.168.1.11'])
|
||||
assert path.value.dict() == {'ip_admin_eth0': ['192.168.1.7']}
|
||||
assert path.config('subpath2').value.dict() == {'ip_admin_eth0': ['192.168.1.8'], 'ip_admin_eth1': ['192.168.1.10']}
|
||||
assert path.config('subpath2.subpath1').value.dict() == {'ip_admin_eth1': ['192.168.1.11']}
|
||||
assert path.config('subpath2.subpath1.conf2').value.dict() == {'ip_admin_eth1': ['192.168.1.11']}
|
||||
assert path.config('subpath2.subpath1.conf1').value.dict() == {'ip_admin_eth0': ['192.168.1.9']}
|
||||
#
|
||||
path.config('subpath2.subpath1.conf2').option('ip_admin_eth1').value.set(['192.168.1.12'])
|
||||
assert path.value.dict() == {'ip_admin_eth0': ['192.168.1.7']}
|
||||
assert path.config('subpath2').value.dict() == {'ip_admin_eth0': ['192.168.1.8'], 'ip_admin_eth1': ['192.168.1.10']}
|
||||
assert path.config('subpath2.subpath1').value.dict() == {'ip_admin_eth1': ['192.168.1.11']}
|
||||
assert path.config('subpath2.subpath1.conf2').value.dict() == {'ip_admin_eth1': ['192.168.1.12']}
|
||||
assert path.config('subpath2.subpath1.conf1').value.dict() == {'ip_admin_eth0': ['192.168.1.9']}
|
||||
#
|
||||
raises(AttributeError, "path.config('subpath2.subpath1.conf1').option('ip_admin_eth1').value.set(['192.168.1.13'])")
|
||||
assert path.value.dict() == {'ip_admin_eth0': ['192.168.1.7']}
|
||||
assert path.config('subpath2').value.dict() == {'ip_admin_eth0': ['192.168.1.8'], 'ip_admin_eth1': ['192.168.1.10']}
|
||||
assert path.config('subpath2.subpath1').value.dict() == {'ip_admin_eth1': ['192.168.1.11']}
|
||||
assert path.config('subpath2.subpath1.conf2').value.dict() == {'ip_admin_eth1': ['192.168.1.12']}
|
||||
assert path.config('subpath2.subpath1.conf1').value.dict() == {'ip_admin_eth0': ['192.168.1.9']}
|
||||
|
Reference in New Issue
Block a user