From 17d5b541e93f5d88ff958372cdf0b0b184bdbc27 Mon Sep 17 00:00:00 2001 From: Tim Rozet Date: Thu, 21 Sep 2017 11:38:51 -0400 Subject: Fixes removing inventory keys Inventory keys that we want to delete were not being removed for instackenv.json. Also fixes unit tests. Change-Id: I7d6c752342db050d651953633f18e236f60334e3 Signed-off-by: Tim Rozet --- apex/tests/config/inventory-virt-1-node.yaml | 13 +++++++++++ apex/tests/config/inventory-virt.yaml | 25 +++++++++++++++++++++ apex/tests/test_apex_inventory.py | 33 +++++++++++++++------------- 3 files changed, 56 insertions(+), 15 deletions(-) create mode 100644 apex/tests/config/inventory-virt-1-node.yaml create mode 100644 apex/tests/config/inventory-virt.yaml (limited to 'apex/tests') diff --git a/apex/tests/config/inventory-virt-1-node.yaml b/apex/tests/config/inventory-virt-1-node.yaml new file mode 100644 index 00000000..3e4b8dc4 --- /dev/null +++ b/apex/tests/config/inventory-virt-1-node.yaml @@ -0,0 +1,13 @@ +nodes: + node0: + arch: x86_64 + capabilities: profile:control + cpu: 4 + disk: 41 + ipmi_ip: 192.168.122.1 + ipmi_pass: password + ipmi_user: admin + mac_address: 00:a8:58:29:f9:99 + memory: 10240 + pm_port: 6230 + pm_type: pxe_ipmitool diff --git a/apex/tests/config/inventory-virt.yaml b/apex/tests/config/inventory-virt.yaml new file mode 100644 index 00000000..36184ea5 --- /dev/null +++ b/apex/tests/config/inventory-virt.yaml @@ -0,0 +1,25 @@ +nodes: + node0: + arch: x86_64 + capabilities: profile:control + cpu: 4 + disk: 41 + ipmi_ip: 192.168.122.1 + ipmi_pass: password + ipmi_user: admin + mac_address: 00:a8:58:29:f9:99 + memory: 10240 + pm_port: 6230 + pm_type: pxe_ipmitool + node1: + arch: x86_64 + capabilities: profile:compute + cpu: 4 + disk: 41 + ipmi_ip: 192.168.122.1 + ipmi_pass: password + ipmi_user: admin + mac_address: 00:9d:c8:10:d9:64 + memory: 8192 + pm_port: 6231 + pm_type: pxe_ipmitool diff --git a/apex/tests/test_apex_inventory.py b/apex/tests/test_apex_inventory.py index cca8068b..87e7d50b 100644 --- a/apex/tests/test_apex_inventory.py +++ b/apex/tests/test_apex_inventory.py @@ -16,7 +16,10 @@ from nose.tools import ( from apex import Inventory from apex.inventory.inventory import InventoryException -from apex.tests.constants import TEST_CONFIG_DIR +from apex.tests.constants import ( + TEST_CONFIG_DIR, + TEST_DUMMY_CONFIG +) inventory_files = ('intel_pod2_settings.yaml', 'nokia_pod1_settings.yaml', @@ -40,26 +43,26 @@ class TestInventory: def teardown(self): """This method is run once after _each_ test method is executed""" - def test_init(self): + def test_inventory_baremetal(self): for f in inventory_files: i = Inventory(os.path.join(files_dir, f)) assert_equal(i.dump_instackenv_json(), None) - # test virtual - i = Inventory(i, virtual=True) - assert_equal(i.dump_instackenv_json(), None) + def test_inventory_invalid_ha_count(self): + assert_raises(InventoryException, Inventory, + os.path.join(TEST_DUMMY_CONFIG, 'inventory-virt.yaml'), + virtual=True, ha=True) - # Remove nodes to violate HA node count - while len(i['nodes']) >= 5: - i['nodes'].pop() - assert_raises(InventoryException, - Inventory, i) + def test_inventory_invalid_noha_count(self): + assert_raises(InventoryException, Inventory, + os.path.join(TEST_DUMMY_CONFIG, + 'inventory-virt-1-node.yaml'), + virtual=True, ha=False) - # Remove nodes to violate non-HA node count - while len(i['nodes']) >= 2: - i['nodes'].pop() - assert_raises(InventoryException, - Inventory, i, ha=False) + def test_inventory_virtual(self): + i = Inventory(os.path.join(TEST_DUMMY_CONFIG, 'inventory-virt.yaml'), + virtual=True, ha=False) + assert_equal(i.dump_instackenv_json(), None) def test_exception(self): e = InventoryException("test") -- cgit 1.2.3-korg