summaryrefslogtreecommitdiffstats
path: root/tests/unit/test_get_conf.py
diff options
context:
space:
mode:
Diffstat (limited to 'tests/unit/test_get_conf.py')
-rw-r--r--tests/unit/test_get_conf.py115
1 files changed, 74 insertions, 41 deletions
diff --git a/tests/unit/test_get_conf.py b/tests/unit/test_get_conf.py
index f882d9d2..dd8480fa 100644
--- a/tests/unit/test_get_conf.py
+++ b/tests/unit/test_get_conf.py
@@ -18,49 +18,82 @@ from deploy.get_conf import (
@pytest.fixture(scope="session")
-def deploy_file(data_root):
- return os.path.join(data_root, 'lab_conf', 'deploy_virtual1.yml')
+def conf_file_dir(data_root):
+ return os.path.join(data_root, 'lab_conf')
-@pytest.fixture(scope="session")
-def network_file(data_root):
- return os.path.join(data_root, 'lab_conf', 'network_virtual1.yml')
-
-
-def test_get_yml_para(deploy_file):
- assert get_yml_para(deploy_file) == (50, 110, 110, 'r00tme', '10.20.11.2', '10.20.11.1', 5)
+@pytest.mark.parametrize('deploy_file_name, expected', [
+ ('deploy_virtual1.yml', (50, 110, 110, 'r00tme', '10.20.11.2', '10.20.11.1', 5)),
+ ('deploy_virtual2.yml', (50, 110, 110, 'r00tme', '10.20.11.2', '10.20.11.1', 1))])
+def test_get_yml_para(conf_file_dir, deploy_file_name, expected):
+ deploy_file = os.path.join(conf_file_dir, deploy_file_name)
+ assert get_yml_para(deploy_file) == expected
-def test_config(deploy_file, network_file):
+@pytest.mark.parametrize('deploy_file_name, network_file_name, expected', [
+ ('deploy_virtual1.yml', 'network_virtual1.yml',
+ ({'ens8': [{'ip': '', 'name': 'EXTERNAL'}],
+ 'ens3': [{'ip': '', 'name': 'MANAGEMENT'},
+ {'ip': '', 'name': 'PUBLICAPI'},
+ {'ip': '', 'name': 'STORAGE'},
+ {'ip': '', 'name': 'physnet1'}],
+ 'ens9': [{'ip': '', 'name': 'HEARTBEAT'}]},
+ ['computer01', 'computer02', 'controller01', 'controller02', 'controller03'],
+ {'MANAGEMENT': {'cidr': '10.20.11.0/24', 'gateway': '10.20.11.1',
+ 'ip_ranges': [{'start': '10.20.11.3',
+ 'end': '10.20.11.10'}]},
+ 'STORAGE': {'cidr': '10.20.11.0/24', 'gateway': '10.20.11.1',
+ 'ip_ranges': [{'start': '10.20.11.3',
+ 'end': '10.20.11.10'}]},
+ 'EXTERNAL': {'cidr': '172.10.101.0/24', 'gateway': '172.10.101.1',
+ 'ip_ranges': [{'start': '172.10.101.2',
+ 'end': '172.10.101.20'}],
+ 'network_name': 'admin_external',
+ 'mapping': 'physnet1'},
+ 'PUBLICAPI': {'cidr': '10.20.11.0/24', 'gateway': '10.20.11.1',
+ 'ip_ranges': [{'start': '10.20.11.3',
+ 'end': '10.20.11.10'}]},
+ 'physnet1': {'cidr': '10.20.11.0/24', 'gateway': '10.20.11.1',
+ 'ip_ranges': [{'start': '10.20.11.3',
+ 'end': '10.20.11.10'}]},
+ 'HEARTBEAT': {'cidr': '100.20.11.0/24', 'gateway': '100.20.11.1',
+ 'ip_ranges': [{'start': '100.20.11.3',
+ 'end': '100.20.11.10'}]}},
+ '10.20.11.11', '/dev/sdb',
+ {'controller01': [], 'controller02': [], 'controller03': [],
+ 'computer01': [], 'computer02': []})),
+ ('deploy_virtual2.yml', 'network_virtual2.yml',
+ ({'ens8': [{'ip': '', 'name': 'EXTERNAL'}],
+ 'ens3': [{'ip': '', 'name': 'MANAGEMENT'},
+ {'ip': '', 'name': 'PUBLICAPI'},
+ {'ip': '', 'name': 'STORAGE'},
+ {'ip': '', 'name': 'physnet1'}],
+ 'ens9': [{'ip': '', 'name': 'HEARTBEAT'}]},
+ ['all_in_one'],
+ {'MANAGEMENT': {'cidr': '10.20.11.0/24', 'gateway': '10.20.11.1',
+ 'ip_ranges': [{'start': '10.20.11.3',
+ 'end': '10.20.11.10'}]},
+ 'STORAGE': {'cidr': '10.20.11.0/24', 'gateway': '10.20.11.1',
+ 'ip_ranges': [{'start': '10.20.11.3',
+ 'end': '10.20.11.10'}]},
+ 'EXTERNAL': {'cidr': '172.10.101.0/24', 'gateway': '172.10.101.1',
+ 'ip_ranges': [{'start': '172.10.101.2',
+ 'end': '172.10.101.20'}],
+ 'network_name': 'admin_external',
+ 'mapping': 'physnet1'},
+ 'PUBLICAPI': {'cidr': '10.20.11.0/24', 'gateway': '10.20.11.1',
+ 'ip_ranges': [{'start': '10.20.11.3',
+ 'end': '10.20.11.10'}]},
+ 'physnet1': {'cidr': '10.20.11.0/24', 'gateway': '10.20.11.1',
+ 'ip_ranges': [{'start': '10.20.11.3',
+ 'end': '10.20.11.10'}]},
+ 'HEARTBEAT': {'cidr': '100.20.11.0/24', 'gateway': '100.20.11.1',
+ 'ip_ranges': [{'start': '100.20.11.3',
+ 'end': '100.20.11.10'}]}},
+ '10.20.11.11', '',
+ {'all_in_one': []}))])
+def test_config(conf_file_dir, deploy_file_name, network_file_name, expected):
+ deploy_file = os.path.join(conf_file_dir, deploy_file_name)
+ network_file = os.path.join(conf_file_dir, network_file_name)
result = config(deploy_file, network_file)
- expect = ({'ens8': [{'ip': '', 'name': 'EXTERNAL'}],
- 'ens3': [{'ip': '', 'name': 'MANAGEMENT'},
- {'ip': '', 'name': 'PUBLICAPI'},
- {'ip': '', 'name': 'STORAGE'},
- {'ip': '', 'name': 'physnet1'}],
- 'ens9': [{'ip': '', 'name': 'HEARTBEAT'}]},
- ['computer01', 'computer02', 'controller01', 'controller02', 'controller03'],
- {'MANAGEMENT': {'cidr': '10.20.11.0/24', 'gateway': '10.20.11.1',
- 'ip_ranges': [{'start': '10.20.11.3',
- 'end': '10.20.11.10'}]},
- 'STORAGE': {'cidr': '10.20.11.0/24', 'gateway': '10.20.11.1',
- 'ip_ranges': [{'start': '10.20.11.3',
- 'end': '10.20.11.10'}]},
- 'EXTERNAL': {'cidr': '172.10.101.0/24', 'gateway': '172.10.101.1',
- 'ip_ranges': [{'start': '172.10.101.2',
- 'end': '172.10.101.20'}],
- 'network_name': 'admin_external',
- 'mapping': 'physnet1'},
- 'PUBLICAPI': {'cidr': '10.20.11.0/24', 'gateway': '10.20.11.1',
- 'ip_ranges': [{'start': '10.20.11.3',
- 'end': '10.20.11.10'}]},
- 'physnet1': {'cidr': '10.20.11.0/24', 'gateway': '10.20.11.1',
- 'ip_ranges': [{'start': '10.20.11.3',
- 'end': '10.20.11.10'}]},
- 'HEARTBEAT': {'cidr': '100.20.11.0/24', 'gateway': '100.20.11.1',
- 'ip_ranges': [{'start': '100.20.11.3',
- 'end': '100.20.11.10'}]}},
- '10.20.11.11', '/dev/sdb',
- {'controller01': [], 'controller02': [], 'controller03': [],
- 'computer01': [], 'computer02': []})
- assert DeepDiff(result, expect, ignore_order=True) == {}
+ assert DeepDiff(result, expected, ignore_order=True) == {}