Example #1
0
 def test_old_config(self):
     """
     Make sure that we can correctly parse an old-style GIP config.
     """
     config_parser = ConfigParser.SafeConfigParser()
     config_file = get_test_config("gip/red-old-gip-config.ini")
     config_parser.read(config_file)
     gip_config = gip.GipConfiguration(logger=global_logger)
     gip_config._parse_configuration(config_parser)
Example #2
0
 def test_user_check_valid_user(self):
     config_parser = ConfigParser.SafeConfigParser()
     config_file = get_test_config("gip/valid_user.ini")
     config_parser.read(config_file)
     config_parser.set('Install Locations', 'user_vo_map',
                       get_test_config(SAMPLE_VO_MAP_LOCATION))
     gip_config = gip.GipConfiguration(logger=global_logger)
     self.assertTrue(
         gip_config._parse_configuration(config_parser) is None,
         "Flagged valid user as being missing")
Example #3
0
 def test_no_name(self):
     """
     Make sure a missing name causes an error
     """
     config_parser = ConfigParser.SafeConfigParser()
     config_file = get_test_config("gip/sc_samples.ini")
     config_parser.read(config_file)
     gip_config = gip.GipConfiguration(logger=global_logger)
     self.assertRaises(exceptions.SettingError, gip_config.check_sc,
                       config_parser, "Subcluster No Name")
Example #4
0
 def test_doherty(self):
     """
     Make sure that we can correctly parse a correct new-style GIP config.
     """
     config_parser = ConfigParser.SafeConfigParser()
     config_file = get_test_config("gip/doherty.ini")
     config_parser.read(config_file)
     gip_config = gip.GipConfiguration(logger=global_logger)
     gip_config._parse_configuration(config_parser)
     gip_config._parse_configuration_ce(config_parser)
Example #5
0
 def test_allowed_vos(self):
     """
     Make sure the allowed VOs is filtered properly.
     """
     config_parser = ConfigParser.SafeConfigParser()
     config_file = get_test_config("gip/allowed_vos.ini")
     config_parser.read(config_file)
     config_parser.set('Install Locations', 'user_vo_map',
                       get_test_config(SAMPLE_VO_MAP_LOCATION))
     gip_config = gip.GipConfiguration(logger=global_logger)
     gip_config._parse_configuration(config_parser)
     gip_config._parse_configuration_ce(config_parser)
Example #6
0
 def test_user_check_invalid_user(self):
     """
     Check to make sure gip class will distinguish between valid and
     invalid users
     """
     config_parser = ConfigParser.SafeConfigParser()
     config_file = get_test_config("gip/invalid_user.ini")
     config_parser.read(config_file)
     config_parser.set('Install Locations', 'user_vo_map',
                       get_test_config(SAMPLE_VO_MAP_LOCATION))
     gip_config = gip.GipConfiguration(logger=global_logger)
     self.assertRaises(exceptions.SettingError,
                       gip_config._parse_configuration, config_parser)
Example #7
0
 def test_mount_point_valid(self):
     """
     Make sure we pass validation for a valid mount_point specification
     """
     did_fail = False
     try:
         config_parser = ConfigParser.SafeConfigParser()
         config_file = get_test_config("gip/mount_point.ini")
         config_parser.read(config_file)
         gip_config = gip.GipConfiguration(logger=global_logger)
         gip_config.check_se(config_parser, "SE Valid")
     except exceptions.SettingError:
         did_fail = True
     self.assertFalse(did_fail, msg="Improperly rejected a valid SE.")
Example #8
0
 def test_changeme2(self):
     """
     Test should fail because SE CHANGEME section is enabled.
     """
     did_fail = False
     try:
         config_parser = ConfigParser.SafeConfigParser()
         config_file = get_test_config("gip/changeme_section_bad.ini")
         config_parser.read(config_file)
         gip_config = gip.GipConfiguration(logger=global_logger)
         gip_config._parse_configuration(config_parser)
     except exceptions.SettingError:
         did_fail = True
     self.assertTrue(did_fail, msg="Did not detect SE CHANGEME section.")
Example #9
0
 def test_changeme1(self):
     """
     Test should pass if SE CHANGEME section is disabled.
     """
     did_fail = False
     try:
         config_parser = ConfigParser.SafeConfigParser()
         config_file = get_test_config("gip/changeme_section.ini")
         config_parser.read(config_file)
         gip_config = gip.GipConfiguration(logger=global_logger)
         gip_config._parse_configuration(config_parser)
     except exceptions.SettingError:
         did_fail = True
     self.assertFalse(did_fail,
                      msg="Falsely detected an enabled CHANGEME section.")
Example #10
0
 def test_missing_se2(self):
     """
     Make sure that we have no when there is no configured SE and there
     is a classic SE.
     """
     did_fail = False
     try:
         config_parser = ConfigParser.SafeConfigParser()
         config_file = get_test_config("gip/red-missing-se2.ini")
         config_parser.read(config_file)
         gip_config = gip.GipConfiguration(logger=global_logger)
         gip_config._parse_configuration(config_parser)
     except exceptions.SettingError:
         did_fail = True
     self.assertFalse(did_fail, msg="Did not properly detect a missing SE.")
Example #11
0
 def test_hepspec_valid(self):
     """
     Make sure a valid HEPSPEC value is accepted.
     """
     did_fail = False
     config_parser = ConfigParser.SafeConfigParser()
     config_file = get_test_config("gip/sc_samples.ini")
     config_parser.read(config_file)
     gip_config = gip.GipConfiguration(logger=global_logger)
     try:
         gip_config.check_sc(config_parser, "Subcluster Valid")
     except exceptions.SettingError:
         did_fail = True
     self.assertFalse(did_fail,
                      msg="Valid HEPSPEC entry threw an exception.")
Example #12
0
 def test_missing_attributes(self):
     """
     Make sure that we have failures when there are missing attributes.
     """
     did_fail = False
     try:
         config_parser = ConfigParser.SafeConfigParser()
         config_file = get_test_config("gip/red-missing-attributes.ini")
         config_parser.read(config_file)
         gip_config = gip.GipConfiguration(logger=global_logger)
         gip_config._parse_configuration(config_parser)
         gip_config._parse_configuration_ce(config_parser)
     except exceptions.SettingError:
         did_fail = True
     self.assertTrue(did_fail, msg="Did not properly detect missing attrs.")
Example #13
0
 def test_mount_point_invalid_path2(self):
     """
     Make sure that if the first path is invalid, then an exception is thrown.
     """
     did_fail = False
     try:
         config_parser = ConfigParser.SafeConfigParser()
         config_file = get_test_config("gip/mount_point.ini")
         config_parser.read(config_file)
         gip_config = gip.GipConfiguration(logger=global_logger)
         gip_config.check_se(config_parser, "SE Invalid Path 2")
     except exceptions.SettingError:
         did_fail = True
     self.assertTrue(did_fail,
                     msg="Did not throw an exception for invalid " \
                         "second mount_point path.")
Example #14
0
 def test_mount_point_wrong_len(self):
     """
     Make sure that if the incorrect number of paths were specified
     for mount_point, then an exception is thrown
     """
     did_fail = False
     try:
         config_parser = ConfigParser.SafeConfigParser()
         config_file = get_test_config("gip/mount_point.ini")
         config_parser.read(config_file)
         gip_config = gip.GipConfiguration(logger=global_logger)
         gip_config.check_se(config_parser, "SE Wrong len")
     except exceptions.SettingError:
         did_fail = True
     self.assertTrue(did_fail,
                     msg="Did not throw an exception for incorrect # " \
                         "of paths in mount_point")
Example #15
0
 def test_hepspec_invalid(self):
     """
     Make sure a invalid HEPSPEC value causes an error..
     """
     config_parser = ConfigParser.SafeConfigParser()
     config_file = get_test_config("gip/sc_samples.ini")
     config_parser.read(config_file)
     gip_config = gip.GipConfiguration(logger=global_logger)
     try:
         gip_config.check_sc(config_parser, "Subcluster Bad HEPSPEC")
     except exceptions.SettingError:
         pass
     else:
         self.fail(msg="Invalid HEPSPEC entry did not throw an exception.")
     try:
         gip_config.check_sc(config_parser, "Subcluster Formerly Bad Cores")
     except exceptions.SettingError:
         self.fail(msg="Formerly Bad Cores entry threw an exception")
Example #16
0
    def test_allowed_jobmanagers(self):
        """
        Make sure the allowed VOs is filtered properly.
        """
        config_parser = ConfigParser.SafeConfigParser()
        config_file = get_test_config("gip/allowed_jobmanager1.ini")
        config_parser.read(config_file)
        config_parser.set('Install Locations', 'user_vo_map',
                          get_test_config(SAMPLE_VO_MAP_LOCATION))
        gip_config = gip.GipConfiguration(logger=global_logger)
        gip_config._parse_configuration(config_parser)
        gip_config._parse_configuration_ce(config_parser)

        config_parser = ConfigParser.SafeConfigParser()
        config_file = get_test_config("gip/allowed_jobmanager2.ini")
        config_parser.read(config_file)
        config_parser.set('Install Locations', 'user_vo_map',
                          get_test_config(SAMPLE_VO_MAP_LOCATION))
        gip_config = gip.GipConfiguration(logger=global_logger)
        gip_config._parse_configuration(config_parser)
        gip_config._parse_configuration_ce(config_parser)

        config_parser = ConfigParser.SafeConfigParser()
        config_file = get_test_config("gip/allowed_jobmanager3.ini")
        config_parser.read(config_file)
        config_parser.set('Install Locations', 'user_vo_map',
                          get_test_config(SAMPLE_VO_MAP_LOCATION))
        gip_config = gip.GipConfiguration(logger=global_logger)
        gip_config._parse_configuration(config_parser)
        gip_config._parse_configuration_ce(config_parser)

        config_parser = ConfigParser.SafeConfigParser()
        config_file = get_test_config("gip/allowed_jobmanager4.ini")
        config_parser.read(config_file)
        config_parser.set('Install Locations', 'user_vo_map',
                          get_test_config(SAMPLE_VO_MAP_LOCATION))
        gip_config = gip.GipConfiguration(logger=global_logger)
        gip_config._parse_configuration(config_parser)
        gip_config._parse_configuration_ce(config_parser)

        config_parser = ConfigParser.SafeConfigParser()
        config_file = get_test_config("gip/allowed_jobmanager5.ini")
        config_parser.read(config_file)
        config_parser.set('Install Locations', 'user_vo_map',
                          get_test_config(SAMPLE_VO_MAP_LOCATION))
        gip_config = gip.GipConfiguration(logger=global_logger)
        gip_config._parse_configuration(config_parser)
        gip_config._parse_configuration_ce(config_parser)

        config_parser = ConfigParser.SafeConfigParser()
        config_file = get_test_config("gip/allowed_jobmanager6.ini")
        config_parser.read(config_file)
        config_parser.set('Install Locations', 'user_vo_map',
                          get_test_config(SAMPLE_VO_MAP_LOCATION))
        gip_config = gip.GipConfiguration(logger=global_logger)
        gip_config._parse_configuration(config_parser)
        gip_config._parse_configuration_ce(config_parser)

        config_parser = ConfigParser.SafeConfigParser()
        config_file = get_test_config("gip/invalid_jobmanager1.ini")
        config_parser.read(config_file)
        config_parser.set('Install Locations', 'user_vo_map',
                          get_test_config(SAMPLE_VO_MAP_LOCATION))
        gip_config = gip.GipConfiguration(logger=global_logger)
        self.failUnlessRaises(exceptions.SettingError,
                              gip_config._parse_configuration,
                              configuration=config_parser)