Exemplo n.º 1
0
    def testParsing2(self):
        """
        Test misc parsing with negative values
        """

        config_file = get_test_config("misc/misc2.ini")
        configuration = ConfigParser.SafeConfigParser()
        configuration.read(config_file)

        settings = misc.MiscConfiguration(logger=global_logger)
        try:
            settings.parse_configuration(configuration)
        except Exception as e:
            self.fail("Received exception while parsing configuration: %s" % e)

        options = settings.options
        variables = {
            'gums_host': 'my.gums.org',
            'authorization_method': 'xacml'
        }
        for var in variables:
            self.assertTrue(options.has_key(var), "Option %s missing" % var)
            self.assertEqual(options[var].value,
                             variables[var],
                             "Wrong value obtained for %s, got %s but " \
                             "expected %s" % (var, options[var].value, variables[var]))
Exemplo n.º 2
0
    def testServiceList(self):
        """
        Test to make sure right services get returned
        """

        config_file = get_test_config("misc/misc_xacml.ini")
        configuration = ConfigParser.SafeConfigParser()
        configuration.read(config_file)

        settings = misc.MiscConfiguration(logger=global_logger)
        try:
            settings.parse_configuration(configuration)
        except Exception as e:
            self.fail("Received exception while parsing configuration: %s" % e)
        services = settings.enabled_services()
        if utilities.rpm_installed('fetch-crl'):
            expected_services = set(
                ['fetch-crl-cron', 'fetch-crl-boot', 'gums-client-cron'])
        else:
            expected_services = set(['gums-client-cron'])

        self.assertEqual(
            services, expected_services,
            "List of enabled services incorrect, " + "got %s but expected %s" %
            (services, expected_services))

        config_file = get_test_config("misc/misc_gridmap.ini")
        configuration = ConfigParser.SafeConfigParser()
        configuration.read(config_file)

        settings = misc.MiscConfiguration(logger=global_logger)
        try:
            settings.parse_configuration(configuration)
        except Exception as e:
            self.fail("Received exception while parsing configuration: %s" % e)
        services = settings.enabled_services()
        if utilities.rpm_installed('fetch-crl'):
            expected_services = set(
                ['fetch-crl-cron', 'fetch-crl-boot', 'edg-mkgridmap'])
        else:
            expected_services = set(['edg-mkgridmap'])

        self.assertEqual(
            services, expected_services,
            "List of enabled services incorrect, " + "got %s but expected %s" %
            (services, expected_services))
Exemplo n.º 3
0
    def testParsingAuthentication(self):
        """
        Test misc parsing with negative values
        """

        config_file = get_test_config("misc/misc_gridmap.ini")
        configuration = configparser.SafeConfigParser()
        configuration.read(config_file)

        settings = misc.MiscConfiguration(logger=global_logger)
        try:
            settings.parse_configuration(configuration)
        except Exception as e:
            self.fail("Received exception while parsing configuration: %s" % e)

        self.assertTrue('authorization_method' in settings.options,
                        "Attribute authorization_method missing")
        self.assertEqual(settings.options['authorization_method'].value,
                         'gridmap',
                         "Wrong value obtained for %s, got %s but " \
                         "expected %s" % ('authorization_method',
                                          settings.options['authorization_method'].value,
                                          'gridmap'))

        config_file = get_test_config("misc/misc_local_gridmap.ini")
        configuration = configparser.SafeConfigParser()
        configuration.read(config_file)

        settings = misc.MiscConfiguration(logger=global_logger)
        try:
            settings.parse_configuration(configuration)
        except Exception as e:
            self.fail("Received exception while parsing configuration: %s" % e)

        self.assertTrue('authorization_method' in settings.options,
                        "Attribute authorization_method missing")
        self.assertEqual(settings.options['authorization_method'].value,
                         'local-gridmap',
                         "Wrong value obtained for %s, got %s but " \
                         "expected %s" % ('authorization_method',
                                          settings.options['authorization_method'].value,
                                          'local-gridmap'))
Exemplo n.º 4
0
    def _test_lcmaps(self, pre_file, post_file, errstring,
                     *update_lcmaps_text_args):
        lcmaps_pre = open(get_test_config(pre_file)).read().strip()
        expected_lcmaps_post = open(get_test_config(post_file)).read().strip()

        settings = misc.MiscConfiguration(logger=global_logger)
        lcmaps_post = settings._update_lcmaps_text(lcmaps_pre,
                                                   *update_lcmaps_text_args)

        diff = diff_strings(expected_lcmaps_post, lcmaps_post)

        self.assertEqual(diff, '', "%s (diff: \n%s\n)" % (errstring, diff))
Exemplo n.º 5
0
    def testXacmlMissingGums(self):
        """
        Test the check_attributes function when xacml is specified but the
        gums host isn't
        """

        config_file = get_test_config("misc/misc_xacml_missing_gums.ini")
        configuration = ConfigParser.SafeConfigParser()
        configuration.read(config_file)

        settings = misc.MiscConfiguration(logger=global_logger)
        settings.parse_configuration(configuration)
        self.assertTrue(exceptions.ConfigureError,
                        settings.check_attributes({}))
Exemplo n.º 6
0
    def testParsing2(self):
        """
        Test misc parsing with negative values
        """

        config_file = get_test_config("misc/misc2.ini")
        configuration = ConfigParser.SafeConfigParser()
        configuration.read(config_file)

        settings = misc.MiscConfiguration(logger=global_logger)
        try:
            settings.parse_configuration(configuration)
        except Exception, e:
            self.fail("Received exception while parsing configuration: %s" % e)
Exemplo n.º 7
0
    def testServiceList(self):
        """
        Test to make sure right services get returned
        """

        config_file = get_test_config("misc/misc_xacml.ini")
        configuration = ConfigParser.SafeConfigParser()
        configuration.read(config_file)

        settings = misc.MiscConfiguration(logger=global_logger)
        try:
            settings.parse_configuration(configuration)
        except Exception, e:
            self.fail("Received exception while parsing configuration: %s" % e)
Exemplo n.º 8
0
    def testInvalidSettings(self):
        """
        Test the check_attributes function to see if it flags bad attributes
        """

        config_file = get_test_config("misc/invalid_settings1.ini")
        configuration = ConfigParser.SafeConfigParser()
        configuration.read(config_file)

        settings = misc.MiscConfiguration(logger=global_logger)
        try:
            settings.parse_configuration(configuration)
        except Exception, e:
            self.fail("Received exception while parsing configuration: %s" % e)
Exemplo n.º 9
0
    def testMissingAttribute(self):
        """
        Test the parsing when attributes are missing, should get exceptions
        """

        mandatory = ['gums_host']
        for option in mandatory:
            config_file = get_test_config("misc/misc1.ini")
            configuration = ConfigParser.SafeConfigParser()
            configuration.read(config_file)
            configuration.remove_option('Misc Services', option)

            settings = misc.MiscConfiguration(logger=global_logger)
            settings.parse_configuration(configuration)
            self.assertTrue(not settings.check_attributes({}))
Exemplo n.º 10
0
    def testXacmlBadGums(self):
        """
        Test the check_attributes function when xacml is specified but the
        gums host isn't valid
        """

        config_file = get_test_config("misc/misc_xacml_bad_gums.ini")
        configuration = ConfigParser.SafeConfigParser()
        configuration.read(config_file)

        settings = misc.MiscConfiguration(logger=global_logger)
        try:
            settings.parse_configuration(configuration)
        except Exception, e:
            self.fail("Received exception while parsing configuration: %s" % e)
Exemplo n.º 11
0
    def testInvalidSettings(self):
        """
        Test the check_attributes function to see if it flags bad attributes
        """

        config_file = get_test_config("misc/invalid_settings1.ini")
        configuration = ConfigParser.SafeConfigParser()
        configuration.read(config_file)

        settings = misc.MiscConfiguration(logger=global_logger)
        try:
            settings.parse_configuration(configuration)
        except Exception as e:
            self.fail("Received exception while parsing configuration: %s" % e)

        attributes = settings.get_attributes()
        self.assertFalse(settings.check_attributes(attributes),
                         "Bad config incorrectly flagged as okay")
Exemplo n.º 12
0
    def testValidSettings2(self):
        """
        Test the check_attributes function to see if it oks good attributes
        """

        config_file = get_test_config("misc/valid_settings2.ini")
        configuration = ConfigParser.SafeConfigParser()
        configuration.read(config_file)

        settings = misc.MiscConfiguration(logger=global_logger)
        try:
            settings.parse_configuration(configuration)
        except Exception as e:
            self.fail("Received exception while parsing configuration: %s" % e)

        attributes = settings.get_attributes()
        self.assertTrue(settings.check_attributes(attributes),
                        "Correct locations incorrectly flagged as invalid")
Exemplo n.º 13
0
            self.fail("Received exception while parsing configuration: %s" % e)

        self.assertTrue(settings.options.has_key('authorization_method'),
                        "Attribute authorization_method missing")
        self.assertEqual(settings.options['authorization_method'].value,
                         'xacml',
                         "Wrong value obtained for %s, got %s but " \
                         "expected %s" % ('authorization_method',
                                          settings.options['authorization_method'].value,
                                          'xacml'))

        config_file = get_test_config("misc/misc_gridmap.ini")
        configuration = ConfigParser.SafeConfigParser()
        configuration.read(config_file)

        settings = misc.MiscConfiguration(logger=global_logger)
        try:
            settings.parse_configuration(configuration)
        except Exception, e:
            self.fail("Received exception while parsing configuration: %s" % e)

        self.assertTrue(settings.options.has_key('authorization_method'),
                        "Attribute authorization_method missing")
        self.assertEqual(settings.options['authorization_method'].value,
                         'gridmap',
                         "Wrong value obtained for %s, got %s but " \
                         "expected %s" % ('authorization_method',
                                          settings.options['authorization_method'].value,
                                          'gridmap'))

        config_file = get_test_config("misc/misc_local_gridmap.ini")