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]))
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))
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'))
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))
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({}))
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)
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)
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)
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({}))
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)
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")
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")
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")