diff options
Diffstat (limited to 'test')
| -rw-r--r-- | test/openshift_version_tests.py | 72 | 
1 files changed, 72 insertions, 0 deletions
| diff --git a/test/openshift_version_tests.py b/test/openshift_version_tests.py new file mode 100644 index 000000000..52e9a9888 --- /dev/null +++ b/test/openshift_version_tests.py @@ -0,0 +1,72 @@ +""" Tests for the openshift_version Ansible filter module. """ +# pylint: disable=missing-docstring,invalid-name + +import os +import sys +import unittest + +sys.path = [os.path.abspath(os.path.dirname(__file__) + "/../filter_plugins/")] + sys.path + +# pylint: disable=import-error +import openshift_version  # noqa: E402 + + +class OpenShiftVersionTests(unittest.TestCase): + +    openshift_version_filters = openshift_version.FilterModule() + +    # Static tests for legacy filters. +    legacy_gte_tests = [{'name': 'oo_version_gte_3_1_or_1_1', +                         'positive_enterprise_version': '3.2.0', +                         'negative_enterprise_version': '3.0.0', +                         'positive_origin_version': '1.2.0', +                         'negative_origin_version': '1.0.0'}, +                        {'name': 'oo_version_gte_3_1_1_or_1_1_1', +                         'positive_enterprise_version': '3.2.0', +                         'negative_enterprise_version': '3.1.0', +                         'positive_origin_version': '1.2.0', +                         'negative_origin_version': '1.1.0'}, +                        {'name': 'oo_version_gte_3_2_or_1_2', +                         'positive_enterprise_version': '3.3.0', +                         'negative_enterprise_version': '3.1.0', +                         'positive_origin_version': '1.3.0', +                         'negative_origin_version': '1.1.0'}, +                        {'name': 'oo_version_gte_3_3_or_1_3', +                         'positive_enterprise_version': '3.4.0', +                         'negative_enterprise_version': '3.2.0', +                         'positive_origin_version': '1.4.0', +                         'negative_origin_version': '1.2.0'}, +                        {'name': 'oo_version_gte_3_4_or_1_4', +                         'positive_enterprise_version': '3.5.0', +                         'negative_enterprise_version': '3.3.0', +                         'positive_origin_version': '1.5.0', +                         'negative_origin_version': '1.3.0'}, +                        {'name': 'oo_version_gte_3_5_or_1_5', +                         'positive_enterprise_version': '3.6.0', +                         'negative_enterprise_version': '3.4.0', +                         'positive_origin_version': '1.6.0', +                         'negative_origin_version': '1.4.0'}] + +    def test_legacy_gte_filters(self): +        for test in self.legacy_gte_tests: +            for deployment_type in ['enterprise', 'origin']: +                # Test negative case per deployment_type +                self.assertFalse( +                    self.openshift_version_filters._filters[test['name']]( +                        test["negative_{}_version".format(deployment_type)], deployment_type)) +                # Test positive case per deployment_type +                self.assertTrue( +                    self.openshift_version_filters._filters[test['name']]( +                        test["positive_{}_version".format(deployment_type)], deployment_type)) + +    def test_gte_filters(self): +        for major, minor_start, minor_end in self.openshift_version_filters.versions: +            for minor in range(minor_start, minor_end): +                # Test positive case +                self.assertTrue( +                    self.openshift_version_filters._filters["oo_version_gte_{}_{}".format(major, minor)]( +                        "{}.{}".format(major, minor + 1))) +                # Test negative case +                self.assertFalse( +                    self.openshift_version_filters._filters["oo_version_gte_{}_{}".format(major, minor)]( +                        "{}.{}".format(major, minor))) | 
