raises(ValueError, "Config(descr)")
-def test_multi_with_requires_that_is_masterslave2():
+def test_multi_with_requires_that_is_masterslave_slave():
b = IntOption('int', 'Test int option', default=[0], multi=True)
c = StrOption('str', 'Test string option', multi=True)
d = StrOption('str1', 'Test string option', requires=[{'option': c, 'expected': '1', 'action': 'hidden'}], multi=True)
descr = OptionDescription("int", "", [b, c, d])
descr.impl_set_group_type(groups.master)
- Config(descr)
-
+ config = Config(descr)
+ config.read_write()
+ assert config.int == [0]
+ assert config.str == [None]
+ assert config.str1 == [None]
+ config.int = [0, 1]
+ assert config.int == [0, 1]
+ assert config.str == [None, None]
+ assert config.str1 == [None, None]
+ config.str = [None, '1']
+ config.read_only()
+ assert config.str1 == [None, None]
+ config.read_write()
+ assert config.str1[0] is None
+ raises(PropertiesOptionError, 'config.str1[1]')
def test_multi_with_requires_that_is_not_same_masterslave():
b = IntOption('int', 'Test int option', default=[0], multi=True)
cfg.ip_admin_eth0.ip_admin_eth0.append('192.168.1.1')
assert cfg.ip_admin_eth0.netmask_admin_eth0[0] is None
raises(PropertiesOptionError, "cfg.ip_admin_eth0.netmask_admin_eth0[1]")
+ cfg.ip_admin_eth0.ip_admin_eth0[1] = '192.168.1.2'
+ assert cfg.ip_admin_eth0.netmask_admin_eth0[1] is None
+ cfg.ip_admin_eth0.netmask_admin_eth0[1] = '255.255.255.255'
+ assert cfg.ip_admin_eth0.netmask_admin_eth0[1] == '255.255.255.255'
+ cfg.ip_admin_eth0.ip_admin_eth0[1] = '192.168.1.1'
+ raises(PropertiesOptionError, "cfg.ip_admin_eth0.netmask_admin_eth0[1]")
def test_master_slave_requires_no_master():
raises(PropertiesOptionError, "cfg.ip_admin_eth0.netmask_admin_eth0")
raises(PropertiesOptionError, "cfg.ip_admin_eth0.netmask_admin_eth0[0]")
raises(PropertiesOptionError, "cfg.ip_admin_eth0.netmask_admin_eth0[1]")
+ cfg.activate = True
+ assert cfg.ip_admin_eth0.netmask_admin_eth0 == [None, None]
+ cfg.ip_admin_eth0.netmask_admin_eth0 = [None, '255.255.255.255']
+ assert cfg.ip_admin_eth0.netmask_admin_eth0[1] == '255.255.255.255'
+ cfg.activate = False
+ raises(PropertiesOptionError, "cfg.ip_admin_eth0.netmask_admin_eth0")
+ raises(PropertiesOptionError, "cfg.ip_admin_eth0.netmask_admin_eth0[0]")
+ raises(PropertiesOptionError, "cfg.ip_admin_eth0.netmask_admin_eth0[1]")