summaryrefslogtreecommitdiffstats
path: root/roles/openshift_master_facts/test/openshift_master_facts_default_priorities_tests.py
diff options
context:
space:
mode:
Diffstat (limited to 'roles/openshift_master_facts/test/openshift_master_facts_default_priorities_tests.py')
-rw-r--r--roles/openshift_master_facts/test/openshift_master_facts_default_priorities_tests.py197
1 files changed, 133 insertions, 64 deletions
diff --git a/roles/openshift_master_facts/test/openshift_master_facts_default_priorities_tests.py b/roles/openshift_master_facts/test/openshift_master_facts_default_priorities_tests.py
index d63f06904..a13b546d1 100644
--- a/roles/openshift_master_facts/test/openshift_master_facts_default_priorities_tests.py
+++ b/roles/openshift_master_facts/test/openshift_master_facts_default_priorities_tests.py
@@ -50,13 +50,23 @@ ZONE_PRIORITY = {
'weight': 2
}
+TEST_VARS = [
+ ('1.1', 'origin', DEFAULT_PRIORITIES_1_1),
+ ('3.1', 'openshift-enterprise', DEFAULT_PRIORITIES_1_1),
+ ('1.2', 'origin', DEFAULT_PRIORITIES_1_2),
+ ('3.2', 'openshift-enterprise', DEFAULT_PRIORITIES_1_2),
+ ('1.3', 'origin', DEFAULT_PRIORITIES_1_3),
+ ('3.3', 'openshift-enterprise', DEFAULT_PRIORITIES_1_3),
+ ('1.4', 'origin', DEFAULT_PRIORITIES_1_4),
+ ('3.4', 'openshift-enterprise', DEFAULT_PRIORITIES_1_4)
+]
+
class TestOpenShiftMasterFactsDefaultPredicates(object):
def setUp(self):
self.lookup = LookupModule()
self.default_facts = {
'openshift': {
- 'master': {},
'common': {}
}
}
@@ -67,13 +77,57 @@ class TestOpenShiftMasterFactsDefaultPredicates(object):
facts['openshift']['common']['deployment_type'] = 'origin'
self.lookup.run(None, variables=facts)
- def check_defaults(self, release, deployment_type, default_priorities,
- zones_enabled, short_version):
+ def check_defaults_short_version(self, release, deployment_type,
+ default_priorities, zones_enabled):
facts = copy.deepcopy(self.default_facts)
- if short_version:
- facts['openshift']['common']['short_version'] = release
+ facts['openshift']['common']['short_version'] = release
+ facts['openshift']['common']['deployment_type'] = deployment_type
+ results = self.lookup.run(None, variables=facts, zones_enabled=zones_enabled)
+ if zones_enabled:
+ assert_equal(results, default_priorities + [ZONE_PRIORITY])
else:
- facts['openshift_release'] = release
+ assert_equal(results, default_priorities)
+
+ def check_defaults_short_version_kwarg(self, release, deployment_type,
+ default_priorities, zones_enabled):
+ facts = copy.deepcopy(self.default_facts)
+ facts['openshift']['common']['deployment_type'] = deployment_type
+ results = self.lookup.run(None, variables=facts,
+ zones_enabled=zones_enabled,
+ short_version=release)
+ if zones_enabled:
+ assert_equal(results, default_priorities + [ZONE_PRIORITY])
+ else:
+ assert_equal(results, default_priorities)
+
+ def check_defaults_deployment_type_kwarg(self, release, deployment_type,
+ default_priorities, zones_enabled):
+ facts = copy.deepcopy(self.default_facts)
+ facts['openshift']['common']['short_version'] = release
+ results = self.lookup.run(None, variables=facts,
+ zones_enabled=zones_enabled,
+ deployment_type=deployment_type)
+ if zones_enabled:
+ assert_equal(results, default_priorities + [ZONE_PRIORITY])
+ else:
+ assert_equal(results, default_priorities)
+
+ def check_defaults_only_kwargs(self, release, deployment_type,
+ default_priorities, zones_enabled):
+ facts = copy.deepcopy(self.default_facts)
+ results = self.lookup.run(None, variables=facts,
+ zones_enabled=zones_enabled,
+ short_version=release,
+ deployment_type=deployment_type)
+ if zones_enabled:
+ assert_equal(results, default_priorities + [ZONE_PRIORITY])
+ else:
+ assert_equal(results, default_priorities)
+
+ def check_defaults_release(self, release, deployment_type, default_priorities,
+ zones_enabled):
+ facts = copy.deepcopy(self.default_facts)
+ facts['openshift_release'] = release
facts['openshift']['common']['deployment_type'] = deployment_type
results = self.lookup.run(None, variables=facts, zones_enabled=zones_enabled)
if zones_enabled:
@@ -81,39 +135,84 @@ class TestOpenShiftMasterFactsDefaultPredicates(object):
else:
assert_equal(results, default_priorities)
- def test_openshift_release_defaults(self):
- test_vars = [
- ('1.1', 'origin', DEFAULT_PRIORITIES_1_1),
- ('3.1', 'openshift-enterprise', DEFAULT_PRIORITIES_1_1),
- ('1.2', 'origin', DEFAULT_PRIORITIES_1_2),
- ('3.2', 'openshift-enterprise', DEFAULT_PRIORITIES_1_2),
- ('1.3', 'origin', DEFAULT_PRIORITIES_1_3),
- ('3.3', 'openshift-enterprise', DEFAULT_PRIORITIES_1_3),
- ('1.4', 'origin', DEFAULT_PRIORITIES_1_4),
- ('3.4', 'openshift-enterprise', DEFAULT_PRIORITIES_1_4)
- ]
+ def check_defaults_version(self, release, deployment_type, default_priorities,
+ zones_enabled):
+ facts = copy.deepcopy(self.default_facts)
+ facts['openshift_version'] = release
+ facts['openshift']['common']['deployment_type'] = deployment_type
+ results = self.lookup.run(None, variables=facts, zones_enabled=zones_enabled)
+ if zones_enabled:
+ assert_equal(results, default_priorities + [ZONE_PRIORITY])
+ else:
+ assert_equal(results, default_priorities)
+ def check_defaults_override_vars(self, release, deployment_type,
+ default_priorities, zones_enabled,
+ extra_facts=None):
+ facts = copy.deepcopy(self.default_facts)
+ facts['openshift']['common']['short_version'] = release
+ facts['openshift']['common']['deployment_type'] = deployment_type
+ if extra_facts is not None:
+ for fact in extra_facts:
+ facts[fact] = extra_facts[fact]
+ results = self.lookup.run(None, variables=facts,
+ zones_enabled=zones_enabled,
+ return_set_vars=False)
+ if zones_enabled:
+ assert_equal(results, default_priorities + [ZONE_PRIORITY])
+ else:
+ assert_equal(results, default_priorities)
+
+ def test_openshift_version(self):
+ for zones_enabled in (True, False):
+ for release, deployment_type, default_priorities in TEST_VARS:
+ release = release + '.1'
+ yield self.check_defaults_version, release, deployment_type, default_priorities, zones_enabled
+
+ def test_v_release_defaults(self):
for zones_enabled in (True, False):
- for release, deployment_type, default_priorities in test_vars:
- for prepend_v in (True, False):
- if prepend_v:
- release = 'v' + release
- yield self.check_defaults, release, deployment_type, default_priorities, zones_enabled, False
+ for release, deployment_type, default_priorities in TEST_VARS:
+ release = 'v' + release
+ yield self.check_defaults_release, release, deployment_type, default_priorities, zones_enabled
+
+ def test_release_defaults(self):
+ for zones_enabled in (True, False):
+ for release, deployment_type, default_priorities in TEST_VARS:
+ yield self.check_defaults_release, release, deployment_type, default_priorities, zones_enabled
def test_short_version_defaults(self):
- test_vars = [
- ('1.1', 'origin', DEFAULT_PRIORITIES_1_1),
- ('3.1', 'openshift-enterprise', DEFAULT_PRIORITIES_1_1),
- ('1.2', 'origin', DEFAULT_PRIORITIES_1_2),
- ('3.2', 'openshift-enterprise', DEFAULT_PRIORITIES_1_2),
- ('1.3', 'origin', DEFAULT_PRIORITIES_1_3),
- ('3.3', 'openshift-enterprise', DEFAULT_PRIORITIES_1_3),
- ('1.4', 'origin', DEFAULT_PRIORITIES_1_4),
- ('3.4', 'openshift-enterprise', DEFAULT_PRIORITIES_1_4)
- ]
for zones_enabled in (True, False):
- for short_version, deployment_type, default_priorities in test_vars:
- yield self.check_defaults, short_version, deployment_type, default_priorities, zones_enabled, True
+ for short_version, deployment_type, default_priorities in TEST_VARS:
+ yield self.check_defaults_short_version, short_version, deployment_type, default_priorities, zones_enabled
+
+ def test_only_kwargs(self):
+ for zones_enabled in (True, False):
+ for short_version, deployment_type, default_priorities in TEST_VARS:
+ yield self.check_defaults_only_kwargs, short_version, deployment_type, default_priorities, zones_enabled
+
+ def test_deployment_type_kwarg(self):
+ for zones_enabled in (True, False):
+ for short_version, deployment_type, default_priorities in TEST_VARS:
+ yield self.check_defaults_deployment_type_kwarg, short_version, deployment_type, default_priorities, zones_enabled
+
+ def test_release_kwarg(self):
+ for zones_enabled in (True, False):
+ for short_version, deployment_type, default_priorities in TEST_VARS:
+ yield self.check_defaults_short_version_kwarg, short_version, deployment_type, default_priorities, zones_enabled
+
+ @raises(AnsibleError)
+ def test_unknown_origin_version(self):
+ facts = copy.deepcopy(self.default_facts)
+ facts['openshift']['common']['short_version'] = '0.1'
+ facts['openshift']['common']['deployment_type'] = 'origin'
+ self.lookup.run(None, variables=facts)
+
+ @raises(AnsibleError)
+ def test_unknown_ocp_version(self):
+ facts = copy.deepcopy(self.default_facts)
+ facts['openshift']['common']['short_version'] = '0.1'
+ facts['openshift']['common']['deployment_type'] = 'openshift-enterprise'
+ self.lookup.run(None, variables=facts)
@raises(AnsibleError)
def test_unknown_deployment_types(self):
@@ -132,33 +231,3 @@ class TestOpenShiftMasterFactsDefaultPredicates(object):
def test_missing_openshift_facts(self):
facts = {}
self.lookup.run(None, variables=facts)
-
- @raises(AnsibleError)
- def test_missing_master_role(self):
- facts = {'openshift': {}}
- self.lookup.run(None, variables=facts)
-
- def test_pre_existing_priorities(self):
- facts = {
- 'openshift': {
- 'master': {
- 'scheduler_priorities': [
- {'name': 'pri_a', 'weight': 1},
- {'name': 'pri_b', 'weight': 1}
- ]
- }
- }
- }
- result = self.lookup.run(None, variables=facts)
- assert_equal(result, facts['openshift']['master']['scheduler_priorities'])
-
- def testDefinedPredicates(self):
- facts = {
- 'openshift': {'master': {}},
- 'openshift_master_scheduler_priorities': [
- {'name': 'pri_a', 'weight': 1},
- {'name': 'pri_b', 'weight': 1}
- ]
- }
- result = self.lookup.run(None, variables=facts)
- assert_equal(result, facts['openshift_master_scheduler_priorities'])