|
@@ -107,6 +107,8 @@ class TestConfigData(unittest.TestCase):
|
|
self.assertRaises(isc.cc.data.DataTypeError, convert_type, spec_part, "a")
|
|
self.assertRaises(isc.cc.data.DataTypeError, convert_type, spec_part, "a")
|
|
self.assertRaises(isc.cc.data.DataTypeError, convert_type, spec_part, [ 1, 2 ])
|
|
self.assertRaises(isc.cc.data.DataTypeError, convert_type, spec_part, [ 1, 2 ])
|
|
self.assertRaises(isc.cc.data.DataTypeError, convert_type, spec_part, { "a": 1 })
|
|
self.assertRaises(isc.cc.data.DataTypeError, convert_type, spec_part, { "a": 1 })
|
|
|
|
+ self.assertRaises(isc.cc.data.DataTypeError, convert_type, 1, "a")
|
|
|
|
+ self.assertRaises(isc.cc.data.DataTypeError, convert_type, { 'somedict': 'somevalue' }, "a")
|
|
|
|
|
|
spec_part = find_spec_part(config_spec, "value2")
|
|
spec_part = find_spec_part(config_spec, "value2")
|
|
self.assertEqual(1.1, convert_type(spec_part, '1.1'))
|
|
self.assertEqual(1.1, convert_type(spec_part, '1.1'))
|
|
@@ -146,6 +148,18 @@ class TestConfigData(unittest.TestCase):
|
|
self.assertRaises(isc.cc.data.DataTypeError, convert_type, spec_part, [ "1", "b" ])
|
|
self.assertRaises(isc.cc.data.DataTypeError, convert_type, spec_part, [ "1", "b" ])
|
|
self.assertRaises(isc.cc.data.DataTypeError, convert_type, spec_part, { "a": 1 })
|
|
self.assertRaises(isc.cc.data.DataTypeError, convert_type, spec_part, { "a": 1 })
|
|
|
|
|
|
|
|
+ spec_part = find_spec_part(config_spec, "value6")
|
|
|
|
+ self.assertEqual({}, convert_type(spec_part, '{}'))
|
|
|
|
+ self.assertEqual({ 'v61': 'a' }, convert_type(spec_part, '{ \'v61\': \'a\' }'))
|
|
|
|
+
|
|
|
|
+ self.assertRaises(isc.cc.data.DataTypeError, convert_type, spec_part, 1.1)
|
|
|
|
+ self.assertRaises(isc.cc.data.DataTypeError, convert_type, spec_part, True)
|
|
|
|
+ self.assertRaises(isc.cc.data.DataTypeError, convert_type, spec_part, "a")
|
|
|
|
+ self.assertRaises(isc.cc.data.DataTypeError, convert_type, spec_part, "1")
|
|
|
|
+ self.assertRaises(isc.cc.data.DataTypeError, convert_type, spec_part, [ "a", "b" ])
|
|
|
|
+ self.assertRaises(isc.cc.data.DataTypeError, convert_type, spec_part, [ "1", "b" ])
|
|
|
|
+ self.assertRaises(isc.cc.data.DataTypeError, convert_type, spec_part, { "a": 1 })
|
|
|
|
+
|
|
spec_part = find_spec_part(config_spec, "value7")
|
|
spec_part = find_spec_part(config_spec, "value7")
|
|
self.assertEqual(['1', '2'], convert_type(spec_part, '1, 2'))
|
|
self.assertEqual(['1', '2'], convert_type(spec_part, '1, 2'))
|
|
self.assertEqual(['1', '2', '3'], convert_type(spec_part, '1 2 3'))
|
|
self.assertEqual(['1', '2', '3'], convert_type(spec_part, '1 2 3'))
|
|
@@ -175,9 +189,9 @@ class TestConfigData(unittest.TestCase):
|
|
|
|
|
|
def test_spec_name_list(self):
|
|
def test_spec_name_list(self):
|
|
name_list = spec_name_list(self.cd.get_module_spec().get_config_spec())
|
|
name_list = spec_name_list(self.cd.get_module_spec().get_config_spec())
|
|
- self.assertEqual(['item1', 'item2', 'item3', 'item4', 'item5/', 'item6/'], name_list)
|
|
|
|
|
|
+ self.assertEqual(['item1', 'item2', 'item3', 'item4', 'item5', 'item6'], name_list)
|
|
name_list = spec_name_list(self.cd.get_module_spec().get_config_spec(), "", True)
|
|
name_list = spec_name_list(self.cd.get_module_spec().get_config_spec(), "", True)
|
|
- self.assertEqual(['item1', 'item2', 'item3', 'item4', 'item5/', 'item6/value1', 'item6/value2'], name_list)
|
|
|
|
|
|
+ self.assertEqual(['item1', 'item2', 'item3', 'item4', 'item5', 'item6/value1', 'item6/value2'], name_list)
|
|
spec_part = find_spec_part(self.cd.get_module_spec().get_config_spec(), "item6")
|
|
spec_part = find_spec_part(self.cd.get_module_spec().get_config_spec(), "item6")
|
|
name_list = spec_name_list(spec_part, "item6", True)
|
|
name_list = spec_name_list(spec_part, "item6", True)
|
|
self.assertEqual(['item6/value1', 'item6/value2'], name_list)
|
|
self.assertEqual(['item6/value1', 'item6/value2'], name_list)
|
|
@@ -193,7 +207,7 @@ class TestConfigData(unittest.TestCase):
|
|
name_list = spec_name_list({ "myModule": config_spec }, "", False)
|
|
name_list = spec_name_list({ "myModule": config_spec }, "", False)
|
|
self.assertEqual(['myModule/'], name_list)
|
|
self.assertEqual(['myModule/'], name_list)
|
|
name_list = spec_name_list({ "myModule": config_spec }, "", True)
|
|
name_list = spec_name_list({ "myModule": config_spec }, "", True)
|
|
- self.assertEqual(['myModule/', 'myModule/value1', 'myModule/value2', 'myModule/value3', 'myModule/value4', 'myModule/value5/', 'myModule/value6/v61', 'myModule/value6/v62', 'myModule/value7/', 'myModule/value8/', 'myModule/value9/v91', 'myModule/value9/v92/v92a', 'myModule/value9/v92/v92b'], name_list)
|
|
|
|
|
|
+ self.assertEqual(['myModule/', 'myModule/value1', 'myModule/value2', 'myModule/value3', 'myModule/value4', 'myModule/value5', 'myModule/value6/v61', 'myModule/value6/v62', 'myModule/value7', 'myModule/value8', 'myModule/value9/v91', 'myModule/value9/v92/v92a', 'myModule/value9/v92/v92b'], name_list)
|
|
|
|
|
|
self.assertRaises(ConfigDataError, spec_name_list, 1)
|
|
self.assertRaises(ConfigDataError, spec_name_list, 1)
|
|
self.assertRaises(ConfigDataError, spec_name_list, [ 'a' ])
|
|
self.assertRaises(ConfigDataError, spec_name_list, [ 'a' ])
|
|
@@ -240,19 +254,19 @@ class TestConfigData(unittest.TestCase):
|
|
|
|
|
|
def test_get_item_list(self):
|
|
def test_get_item_list(self):
|
|
name_list = self.cd.get_item_list()
|
|
name_list = self.cd.get_item_list()
|
|
- self.assertEqual(['item1', 'item2', 'item3', 'item4', 'item5/', 'item6/'], name_list)
|
|
|
|
|
|
+ self.assertEqual(['item1', 'item2', 'item3', 'item4', 'item5', 'item6'], name_list)
|
|
name_list = self.cd.get_item_list("", True)
|
|
name_list = self.cd.get_item_list("", True)
|
|
- self.assertEqual(['item1', 'item2', 'item3', 'item4', 'item5/', 'item6/value1', 'item6/value2'], name_list)
|
|
|
|
|
|
+ self.assertEqual(['item1', 'item2', 'item3', 'item4', 'item5', 'item6/value1', 'item6/value2'], name_list)
|
|
name_list = self.cd.get_item_list("item6", False)
|
|
name_list = self.cd.get_item_list("item6", False)
|
|
self.assertEqual(['item6/value1', 'item6/value2'], name_list)
|
|
self.assertEqual(['item6/value1', 'item6/value2'], name_list)
|
|
|
|
|
|
def test_get_full_config(self):
|
|
def test_get_full_config(self):
|
|
full_config = self.cd.get_full_config()
|
|
full_config = self.cd.get_full_config()
|
|
- self.assertEqual({ "item1": 1, "item2": 1.1, "item3": True, "item4": "test", "item5/": ['a', 'b'], "item6/value1": 'default', 'item6/value2': None}, full_config)
|
|
|
|
|
|
+ self.assertEqual({ "item1": 1, "item2": 1.1, "item3": True, "item4": "test", "item5": ['a', 'b'], "item6/value1": 'default', 'item6/value2': None}, full_config)
|
|
my_config = { "item1": 2, "item2": 2.2, "item3": False, "item4": "asdf", "item5": [ "c", "d" ] }
|
|
my_config = { "item1": 2, "item2": 2.2, "item3": False, "item4": "asdf", "item5": [ "c", "d" ] }
|
|
self.cd.set_local_config(my_config)
|
|
self.cd.set_local_config(my_config)
|
|
full_config = self.cd.get_full_config()
|
|
full_config = self.cd.get_full_config()
|
|
- self.assertEqual({ "item1": 2, "item2": 2.2, "item3": False, "item4": "asdf", "item5/": [ "c", "d" ], "item6/value1": 'default', 'item6/value2': None}, full_config)
|
|
|
|
|
|
+ self.assertEqual({ "item1": 2, "item2": 2.2, "item3": False, "item4": "asdf", "item5": [ "c", "d" ], "item6/value1": 'default', 'item6/value2': None}, full_config)
|
|
|
|
|
|
class TestMultiConfigData(unittest.TestCase):
|
|
class TestMultiConfigData(unittest.TestCase):
|
|
def setUp(self):
|
|
def setUp(self):
|
|
@@ -342,6 +356,12 @@ class TestMultiConfigData(unittest.TestCase):
|
|
self.assertEqual(1, value)
|
|
self.assertEqual(1, value)
|
|
value = self.mcd.get_default_value("/Spec2/item1")
|
|
value = self.mcd.get_default_value("/Spec2/item1")
|
|
self.assertEqual(1, value)
|
|
self.assertEqual(1, value)
|
|
|
|
+ value = self.mcd.get_default_value("Spec2/item5[0]")
|
|
|
|
+ self.assertEqual('a', value)
|
|
|
|
+ value = self.mcd.get_default_value("Spec2/item5[5]")
|
|
|
|
+ self.assertEqual(None, value)
|
|
|
|
+ value = self.mcd.get_default_value("Spec2/item5[0][1]")
|
|
|
|
+ self.assertEqual(None, value)
|
|
value = self.mcd.get_default_value("Spec2/item6/value1")
|
|
value = self.mcd.get_default_value("Spec2/item6/value1")
|
|
self.assertEqual('default', value)
|
|
self.assertEqual('default', value)
|
|
value = self.mcd.get_default_value("Spec2/item6/value2")
|
|
value = self.mcd.get_default_value("Spec2/item6/value2")
|
|
@@ -353,20 +373,34 @@ class TestMultiConfigData(unittest.TestCase):
|
|
module_spec = isc.config.module_spec_from_file(self.data_path + os.sep + "spec2.spec")
|
|
module_spec = isc.config.module_spec_from_file(self.data_path + os.sep + "spec2.spec")
|
|
self.mcd.set_specification(module_spec)
|
|
self.mcd.set_specification(module_spec)
|
|
self.mcd.set_value("Spec2/item1", 2)
|
|
self.mcd.set_value("Spec2/item1", 2)
|
|
- value,status = self.mcd.get_value("Spec2/item1")
|
|
|
|
|
|
+
|
|
|
|
+ value, status = self.mcd.get_value("Spec2/item1")
|
|
self.assertEqual(2, value)
|
|
self.assertEqual(2, value)
|
|
self.assertEqual(MultiConfigData.LOCAL, status)
|
|
self.assertEqual(MultiConfigData.LOCAL, status)
|
|
- value,status = self.mcd.get_value("Spec2/item2")
|
|
|
|
|
|
+
|
|
|
|
+ value, status = self.mcd.get_value("Spec2/item2")
|
|
self.assertEqual(1.1, value)
|
|
self.assertEqual(1.1, value)
|
|
self.assertEqual(MultiConfigData.DEFAULT, status)
|
|
self.assertEqual(MultiConfigData.DEFAULT, status)
|
|
|
|
+
|
|
self.mcd._current_config = { "Spec2": { "item3": False } }
|
|
self.mcd._current_config = { "Spec2": { "item3": False } }
|
|
- value,status = self.mcd.get_value("Spec2/item3")
|
|
|
|
|
|
+
|
|
|
|
+ value, status = self.mcd.get_value("Spec2/item3")
|
|
self.assertEqual(False, value)
|
|
self.assertEqual(False, value)
|
|
self.assertEqual(MultiConfigData.CURRENT, status)
|
|
self.assertEqual(MultiConfigData.CURRENT, status)
|
|
- value,status = self.mcd.get_value("Spec2/no_such_item")
|
|
|
|
|
|
+
|
|
|
|
+ value, status = self.mcd.get_value("Spec2/no_such_item")
|
|
|
|
+ self.assertEqual(None, value)
|
|
|
|
+ self.assertEqual(MultiConfigData.NONE, status)
|
|
|
|
+
|
|
|
|
+ value, status = self.mcd.get_value("Spec2/item5[0]")
|
|
|
|
+ self.assertEqual("a", value)
|
|
|
|
+ self.assertEqual(MultiConfigData.DEFAULT, status)
|
|
|
|
+
|
|
|
|
+ value, status = self.mcd.get_value("Spec2/item5[0]", False)
|
|
self.assertEqual(None, value)
|
|
self.assertEqual(None, value)
|
|
self.assertEqual(MultiConfigData.NONE, status)
|
|
self.assertEqual(MultiConfigData.NONE, status)
|
|
|
|
|
|
|
|
+
|
|
def test_get_value_maps(self):
|
|
def test_get_value_maps(self):
|
|
maps = self.mcd.get_value_maps()
|
|
maps = self.mcd.get_value_maps()
|
|
self.assertEqual([], maps)
|
|
self.assertEqual([], maps)
|
|
@@ -390,29 +424,31 @@ class TestMultiConfigData(unittest.TestCase):
|
|
self.mcd.set_value("Spec2/item3", False)
|
|
self.mcd.set_value("Spec2/item3", False)
|
|
maps = self.mcd.get_value_maps("/Spec2")
|
|
maps = self.mcd.get_value_maps("/Spec2")
|
|
self.assertEqual([{'default': False, 'type': 'integer', 'name': 'item1', 'value': 2, 'modified': False},
|
|
self.assertEqual([{'default': False, 'type': 'integer', 'name': 'item1', 'value': 2, 'modified': False},
|
|
- {'default': False, 'type': 'real', 'name': 'item2', 'value': 1.1, 'modified': False},
|
|
|
|
|
|
+ {'default': True, 'type': 'real', 'name': 'item2', 'value': 1.1, 'modified': False},
|
|
{'default': False, 'type': 'boolean', 'name': 'item3', 'value': False, 'modified': True},
|
|
{'default': False, 'type': 'boolean', 'name': 'item3', 'value': False, 'modified': True},
|
|
- {'default': False, 'type': 'string', 'name': 'item4', 'value': 'test', 'modified': False},
|
|
|
|
- {'default': False, 'type': 'list', 'name': 'item5', 'value': ['a', 'b'], 'modified': False},
|
|
|
|
- {'default': False, 'type': 'map', 'name': 'item6', 'value': {}, 'modified': False}], maps)
|
|
|
|
|
|
+ {'default': True, 'type': 'string', 'name': 'item4', 'value': 'test', 'modified': False},
|
|
|
|
+ {'default': True, 'type': 'list', 'name': 'item5', 'value': ['a', 'b'], 'modified': False},
|
|
|
|
+ {'default': True, 'type': 'map', 'name': 'item6', 'value': {}, 'modified': False}], maps)
|
|
maps = self.mcd.get_value_maps("Spec2")
|
|
maps = self.mcd.get_value_maps("Spec2")
|
|
self.assertEqual([{'default': False, 'type': 'integer', 'name': 'item1', 'value': 2, 'modified': False},
|
|
self.assertEqual([{'default': False, 'type': 'integer', 'name': 'item1', 'value': 2, 'modified': False},
|
|
- {'default': False, 'type': 'real', 'name': 'item2', 'value': 1.1, 'modified': False},
|
|
|
|
|
|
+ {'default': True, 'type': 'real', 'name': 'item2', 'value': 1.1, 'modified': False},
|
|
{'default': False, 'type': 'boolean', 'name': 'item3', 'value': False, 'modified': True},
|
|
{'default': False, 'type': 'boolean', 'name': 'item3', 'value': False, 'modified': True},
|
|
- {'default': False, 'type': 'string', 'name': 'item4', 'value': 'test', 'modified': False},
|
|
|
|
- {'default': False, 'type': 'list', 'name': 'item5', 'value': ['a', 'b'], 'modified': False},
|
|
|
|
- {'default': False, 'type': 'map', 'name': 'item6', 'value': {}, 'modified': False}], maps)
|
|
|
|
|
|
+ {'default': True, 'type': 'string', 'name': 'item4', 'value': 'test', 'modified': False},
|
|
|
|
+ {'default': True, 'type': 'list', 'name': 'item5', 'value': ['a', 'b'], 'modified': False},
|
|
|
|
+ {'default': True, 'type': 'map', 'name': 'item6', 'value': {}, 'modified': False}], maps)
|
|
maps = self.mcd.get_value_maps("/Spec2/item5")
|
|
maps = self.mcd.get_value_maps("/Spec2/item5")
|
|
self.assertEqual([{'default': False, 'type': 'string', 'name': 'list_element', 'value': 'a', 'modified': False},
|
|
self.assertEqual([{'default': False, 'type': 'string', 'name': 'list_element', 'value': 'a', 'modified': False},
|
|
{'default': False, 'type': 'string', 'name': 'list_element', 'value': 'b', 'modified': False}], maps)
|
|
{'default': False, 'type': 'string', 'name': 'list_element', 'value': 'b', 'modified': False}], maps)
|
|
|
|
+ maps = self.mcd.get_value_maps("/Spec2/item5[0]")
|
|
|
|
+ self.assertEqual([{'default': True, 'modified': False, 'name': 'list_element', 'type': 'string', 'value': 'a'}], maps)
|
|
maps = self.mcd.get_value_maps("/Spec2/item1")
|
|
maps = self.mcd.get_value_maps("/Spec2/item1")
|
|
self.assertEqual([{'default': False, 'type': 'integer', 'name': 'item1', 'value': 2, 'modified': False}], maps)
|
|
self.assertEqual([{'default': False, 'type': 'integer', 'name': 'item1', 'value': 2, 'modified': False}], maps)
|
|
maps = self.mcd.get_value_maps("/Spec2/item2")
|
|
maps = self.mcd.get_value_maps("/Spec2/item2")
|
|
- self.assertEqual([{'default': False, 'type': 'real', 'name': 'item2', 'value': 1.1, 'modified': False}], maps)
|
|
|
|
|
|
+ self.assertEqual([{'default': True, 'type': 'real', 'name': 'item2', 'value': 1.1, 'modified': False}], maps)
|
|
maps = self.mcd.get_value_maps("/Spec2/item3")
|
|
maps = self.mcd.get_value_maps("/Spec2/item3")
|
|
self.assertEqual([{'default': False, 'type': 'boolean', 'name': 'item3', 'value': False, 'modified': True}], maps)
|
|
self.assertEqual([{'default': False, 'type': 'boolean', 'name': 'item3', 'value': False, 'modified': True}], maps)
|
|
maps = self.mcd.get_value_maps("/Spec2/item4")
|
|
maps = self.mcd.get_value_maps("/Spec2/item4")
|
|
- self.assertEqual([{'default': False, 'type': 'string', 'name': 'item4', 'value': 'test', 'modified': False}], maps)
|
|
|
|
|
|
+ self.assertEqual([{'default': True, 'type': 'string', 'name': 'item4', 'value': 'test', 'modified': False}], maps)
|
|
|
|
|
|
module_spec = isc.config.module_spec_from_file(self.data_path + os.sep + "spec24.spec")
|
|
module_spec = isc.config.module_spec_from_file(self.data_path + os.sep + "spec24.spec")
|
|
self.mcd.set_specification(module_spec)
|
|
self.mcd.set_specification(module_spec)
|
|
@@ -429,7 +465,19 @@ class TestMultiConfigData(unittest.TestCase):
|
|
self.mcd.set_specification(module_spec)
|
|
self.mcd.set_specification(module_spec)
|
|
self.mcd.set_value("Spec2/item1", 2)
|
|
self.mcd.set_value("Spec2/item1", 2)
|
|
self.assertRaises(isc.cc.data.DataTypeError, self.mcd.set_value, "Spec2/item1", "asdf")
|
|
self.assertRaises(isc.cc.data.DataTypeError, self.mcd.set_value, "Spec2/item1", "asdf")
|
|
|
|
+
|
|
self.mcd.set_value("Spec2/no_such_item", 4)
|
|
self.mcd.set_value("Spec2/no_such_item", 4)
|
|
|
|
+ value, status = self.mcd.get_value("Spec2/no_such_item")
|
|
|
|
+ self.assertEqual(value, 4)
|
|
|
|
+ self.assertEqual(MultiConfigData.LOCAL, status)
|
|
|
|
+
|
|
|
|
+ self.mcd.set_value("Spec2/item5[0]", "c")
|
|
|
|
+ value, status = self.mcd.get_value("Spec2/item5[0]")
|
|
|
|
+ self.assertEqual(value, "c")
|
|
|
|
+ self.assertEqual(MultiConfigData.LOCAL, status)
|
|
|
|
+
|
|
|
|
+ self.assertRaises(isc.cc.data.DataTypeError, self.mcd.set_value, "Spec2/item5[a]", "asdf")
|
|
|
|
+
|
|
|
|
|
|
def test_get_config_item_list(self):
|
|
def test_get_config_item_list(self):
|
|
config_items = self.mcd.get_config_item_list()
|
|
config_items = self.mcd.get_config_item_list()
|
|
@@ -441,13 +489,15 @@ class TestMultiConfigData(unittest.TestCase):
|
|
config_items = self.mcd.get_config_item_list(None, False)
|
|
config_items = self.mcd.get_config_item_list(None, False)
|
|
self.assertEqual(['Spec2'], config_items)
|
|
self.assertEqual(['Spec2'], config_items)
|
|
config_items = self.mcd.get_config_item_list(None, True)
|
|
config_items = self.mcd.get_config_item_list(None, True)
|
|
- self.assertEqual(['Spec2/item1', 'Spec2/item2', 'Spec2/item3', 'Spec2/item4', 'Spec2/item5/', 'Spec2/item6/value1', 'Spec2/item6/value2'], config_items)
|
|
|
|
|
|
+ self.assertEqual(['Spec2/item1', 'Spec2/item2', 'Spec2/item3', 'Spec2/item4', 'Spec2/item5', 'Spec2/item6/value1', 'Spec2/item6/value2'], config_items)
|
|
config_items = self.mcd.get_config_item_list("Spec2", True)
|
|
config_items = self.mcd.get_config_item_list("Spec2", True)
|
|
- self.assertEqual(['Spec2/item1', 'Spec2/item2', 'Spec2/item3', 'Spec2/item4', 'Spec2/item5/', 'Spec2/item6/value1', 'Spec2/item6/value2'], config_items)
|
|
|
|
|
|
+ self.assertEqual(['Spec2/item1', 'Spec2/item2', 'Spec2/item3', 'Spec2/item4', 'Spec2/item5', 'Spec2/item6/value1', 'Spec2/item6/value2'], config_items)
|
|
config_items = self.mcd.get_config_item_list("Spec2")
|
|
config_items = self.mcd.get_config_item_list("Spec2")
|
|
- self.assertEqual(['Spec2/item1', 'Spec2/item2', 'Spec2/item3', 'Spec2/item4', 'Spec2/item5/', 'Spec2/item6/'], config_items)
|
|
|
|
|
|
+ self.assertEqual(['Spec2/item1', 'Spec2/item2', 'Spec2/item3', 'Spec2/item4', 'Spec2/item5', 'Spec2/item6'], config_items)
|
|
|
|
+ config_items = self.mcd.get_config_item_list("/Spec2")
|
|
|
|
+ self.assertEqual(['Spec2/item1', 'Spec2/item2', 'Spec2/item3', 'Spec2/item4', 'Spec2/item5', 'Spec2/item6'], config_items)
|
|
config_items = self.mcd.get_config_item_list("Spec2", True)
|
|
config_items = self.mcd.get_config_item_list("Spec2", True)
|
|
- self.assertEqual(['Spec2/item1', 'Spec2/item2', 'Spec2/item3', 'Spec2/item4', 'Spec2/item5/', 'Spec2/item6/value1', 'Spec2/item6/value2'], config_items)
|
|
|
|
|
|
+ self.assertEqual(['Spec2/item1', 'Spec2/item2', 'Spec2/item3', 'Spec2/item4', 'Spec2/item5', 'Spec2/item6/value1', 'Spec2/item6/value2'], config_items)
|
|
|
|
|
|
if __name__ == '__main__':
|
|
if __name__ == '__main__':
|
|
unittest.main()
|
|
unittest.main()
|