summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSamuel Munilla <smunilla@redhat.com>2015-11-20 14:22:10 -0500
committerSamuel Munilla <smunilla@redhat.com>2015-11-20 14:22:10 -0500
commit7a5cc821c30abc6f1fce374e2a360bb9406f71f1 (patch)
tree8d1953e5ae708a2d8ff7424345bffcf18fc23e06
parentc32d7eb88d30cbb131a9b8562d51e7a5930b79f4 (diff)
downloadopenshift-7a5cc821c30abc6f1fce374e2a360bb9406f71f1.tar.gz
openshift-7a5cc821c30abc6f1fce374e2a360bb9406f71f1.tar.bz2
openshift-7a5cc821c30abc6f1fce374e2a360bb9406f71f1.tar.xz
openshift-7a5cc821c30abc6f1fce374e2a360bb9406f71f1.zip
Add some tests for a bad config
-rw-r--r--utils/test/cli_installer_tests.py38
-rw-r--r--utils/test/oo_config_tests.py34
2 files changed, 72 insertions, 0 deletions
diff --git a/utils/test/cli_installer_tests.py b/utils/test/cli_installer_tests.py
index baadad358..e12b4a264 100644
--- a/utils/test/cli_installer_tests.py
+++ b/utils/test/cli_installer_tests.py
@@ -67,6 +67,29 @@ hosts:
node: true
"""
+BAD_CONFIG = """
+variant: %s
+ansible_ssh_user: root
+hosts:
+ - connect_to: 10.0.0.1
+ ip: 10.0.0.1
+ hostname: master-private.example.com
+ public_ip: 24.222.0.1
+ public_hostname: master.example.com
+ master: true
+ node: true
+ - ip: 10.0.0.2
+ hostname: node1-private.example.com
+ public_ip: 24.222.0.2
+ public_hostname: node1.example.com
+ node: true
+ - connect_to: 10.0.0.3
+ ip: 10.0.0.3
+ hostname: node2-private.example.com
+ public_ip: 24.222.0.3
+ public_hostname: node2.example.com
+ node: true
+"""
class OOCliFixture(OOInstallFixture):
@@ -465,6 +488,21 @@ class UnattendedCliTests(OOCliFixture):
self.assertTrue('ANSIBLE_CONFIG' not in env_vars or
env_vars['ANSIBLE_CONFIG'] == cli.DEFAULT_ANSIBLE_CONFIG)
+ # unattended with bad config file and no installed hosts (without --force)
+ @patch('ooinstall.openshift_ansible.run_main_playbook')
+ @patch('ooinstall.openshift_ansible.load_system_facts')
+ def test_bad_config(self, load_facts_mock, run_playbook_mock):
+ load_facts_mock.return_value = (MOCK_FACTS, 0)
+ run_playbook_mock.return_value = 0
+
+ config_file = self.write_config(os.path.join(self.work_dir,
+ 'ooinstall.conf'), BAD_CONFIG % 'openshift-enterprise')
+
+ self.cli_args.extend(["-c", config_file, "install"])
+ self.runner.invoke(cli.cli, self.cli_args)
+
+ # proving here that we didn't generate an exception from the bad config
+ assert True
class AttendedCliTests(OOCliFixture):
diff --git a/utils/test/oo_config_tests.py b/utils/test/oo_config_tests.py
index 0dd4a30e9..9f5f8e244 100644
--- a/utils/test/oo_config_tests.py
+++ b/utils/test/oo_config_tests.py
@@ -73,6 +73,29 @@ hosts:
node: true
"""
+CONFIG_BAD = """
+variant: openshift-enterprise
+ansible_ssh_user: root
+hosts:
+ - connect_to: master-private.example.com
+ ip: 10.0.0.1
+ hostname: master-private.example.com
+ public_ip: 24.222.0.1
+ public_hostname: master.example.com
+ master: true
+ node: true
+ - ip: 10.0.0.2
+ hostname: node1-private.example.com
+ public_ip: 24.222.0.2
+ public_hostname: node1.example.com
+ node: true
+ - connect_to: node2-private.example.com
+ ip: 10.0.0.3
+ hostname: node2-private.example.com
+ public_ip: 24.222.0.3
+ public_hostname: node2.example.com
+ node: true
+"""
class OOInstallFixture(unittest.TestCase):
@@ -161,6 +184,17 @@ class OOConfigTests(OOInstallFixture):
self.assertEquals('openshift-enterprise', ooconfig.settings['variant'])
self.assertEquals('v1', ooconfig.settings['version'])
+ def test_load_bad_config(self):
+
+ cfg_path = self.write_config(os.path.join(self.work_dir,
+ 'ooinstall.conf'), CONFIG_BAD)
+ try:
+ OOConfig(cfg_path)
+ assert False
+ except OOConfigInvalidHostError:
+ assert True
+
+
def test_load_complete_facts(self):
cfg_path = self.write_config(os.path.join(self.work_dir,
'ooinstall.conf'), SAMPLE_CONFIG)