Пример #1
0
    def testBadHost(self):
        """
        Test the check_attributes function when the squid proxy hostname is
        not valie
        """

        if not ce_installed():
            return True
        config_file = get_test_config("squid/squid_bad_host.ini")
        configuration = configparser.SafeConfigParser()
        configuration.read(config_file)

        settings = squid.SquidConfiguration(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),
                         "Did not notice invalid host")

        config_file = get_test_config("squid/squid_bad_host2.ini")
        configuration = configparser.SafeConfigParser()
        configuration.read(config_file)

        settings = squid.SquidConfiguration(logger=global_logger)
        try:
            settings.parse_configuration(configuration)
        except Exception as e:
            self.fail("Received exception while parsing configuration")

        attributes = settings.get_attributes()
        self.assertFalse(settings.check_attributes(attributes),
                         "Did not notice invalid host")
Пример #2
0
    def testParsingIgnored(self):
        """
        Test parsing when ignored
        """

        config_file = get_test_config("squid/ignored.ini")
        configuration = configparser.SafeConfigParser()
        configuration.read(config_file)

        settings = squid.SquidConfiguration(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.assertEqual(len(attributes), 1,
                         "Ignored configuration should have 1 attribute")

        variables = {'OSG_SQUID_LOCATION': 'test.com:3128'}
        for var in variables:
            self.assertTrue(var in attributes,
                            "Attribute %s missing" % var)
            self.assertEqual(attributes[var],
                             variables[var],
                             "Wrong value obtained for %s, got %s but " \
                             "expected %s" % (var, attributes[var], variables[var]))
Пример #3
0
    def testParsingDisabled(self):
        """
        Test parsing when disabled
        """

        config_file = get_test_config("squid/squid_disabled.ini")
        configuration = ConfigParser.SafeConfigParser()
        configuration.read(config_file)

        settings = squid.SquidConfiguration(logger=global_logger)
        try:
            settings.parse_configuration(configuration)
        except Exception, e:
            self.fail("Received exception while parsing configuration: %s" % e)
Пример #4
0
    def testBadCache(self):
        """
        Test the check_attributes function when cache size is not an integer
        """

        if not ce_installed():
            return True
        config_file = get_test_config("squid/squid_bad_cache.ini")
        configuration = ConfigParser.SafeConfigParser()
        configuration.read(config_file)

        settings = squid.SquidConfiguration(logger=global_logger)
        self.assertRaises(exceptions.SettingError,
                          settings.parse_configuration, configuration)
Пример #5
0
    def testMissingAttribute(self):
        """
        Test the parsing when attributes are missing, should get exceptions
        """

        mandatory = ['location']
        for option in mandatory:
            config_file = get_test_config("squid/squid1.ini")
            configuration = ConfigParser.SafeConfigParser()
            configuration.read(config_file)
            configuration.remove_option('Squid', option)

            settings = squid.SquidConfiguration(logger=global_logger)
            self.assertRaises(exceptions.SettingError,
                              settings.parse_configuration, configuration)
Пример #6
0
    def testLocationUnavailable(self):
        """
        Test the check_attributes function to see if it oks a section
        where location is set to UNAVAILABLE
        """

        config_file = get_test_config("squid/squid_unavailable.ini")
        configuration = ConfigParser.SafeConfigParser()
        configuration.read(config_file)

        settings = squid.SquidConfiguration(logger=global_logger)
        try:
            settings.parse_configuration(configuration)
        except Exception, e:
            self.fail("Received exception while parsing configuration: %s" % e)
Пример #7
0
    def testDisabled(self):
        """
        Test the check_attributes function to see if it indicates that a disabled
        section has an error
        """

        config_file = get_test_config("squid/squid_disabled.ini")
        configuration = ConfigParser.SafeConfigParser()
        configuration.read(config_file)

        settings = squid.SquidConfiguration(logger=global_logger)
        try:
            settings.parse_configuration(configuration)
        except Exception, e:
            self.fail("Received exception while parsing configuration: %s" % e)
Пример #8
0
    def testValidSettings(self):
        """
        Test the check_attributes function to see if it oks good attributes
        """

        if not ce_installed():
            return True
        config_file = get_test_config("squid/valid_settings.ini")
        configuration = ConfigParser.SafeConfigParser()
        configuration.read(config_file)

        settings = squid.SquidConfiguration(logger=global_logger)
        try:
            settings.parse_configuration(configuration)
        except Exception, e:
            self.fail("Received exception while parsing configuration: %s" % e)
Пример #9
0
    def testBlankLocation(self):
        """
        Test the check_attributes function to see if it raises an error when
        location is left blank
        """

        if not ce_installed():
            return True
        config_file = get_test_config("squid/squid_blank_location.ini")
        configuration = ConfigParser.SafeConfigParser()
        configuration.read(config_file)

        settings = squid.SquidConfiguration(logger=global_logger)
        try:
            settings.parse_configuration(configuration)
        except Exception, e:
            self.fail("Received exception while parsing configuration: %s" % e)
Пример #10
0
    def testBadPort(self):
        """
        Test the check_attributes function when port for the squid proxy is
        not an integer
        """

        if not ce_installed():
            return True
        config_file = get_test_config("squid/squid_bad_port.ini")
        configuration = ConfigParser.SafeConfigParser()
        configuration.read(config_file)

        settings = squid.SquidConfiguration(logger=global_logger)
        try:
            settings.parse_configuration(configuration)
        except Exception, e:
            self.fail("Received exception while parsing configuration: %s" % e)
Пример #11
0
    def testValidSettings(self):
        """
        Test the check_attributes function to see if it oks good attributes
        """

        if not ce_installed():
            return True
        config_file = get_test_config("squid/valid_settings.ini")
        configuration = configparser.SafeConfigParser()
        configuration.read(config_file)

        settings = squid.SquidConfiguration(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 missing")
Пример #12
0
    def testParsingDisabled(self):
        """
        Test parsing when disabled
        """

        config_file = get_test_config("squid/squid_disabled.ini")
        configuration = ConfigParser.SafeConfigParser()
        configuration.read(config_file)

        settings = squid.SquidConfiguration(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.assertEqual(len(attributes), 0,
                         "Disabled configuration should have 0 attributes")

        self.assertEqual(
            attributes, {}, "Error attributes from squid configuration " +
            "not empty when disabled")
Пример #13
0
    def testParsing2(self):
        """
        Test squid parsing
        """

        config_file = get_test_config("squid/squid2.ini")
        configuration = ConfigParser.SafeConfigParser()
        configuration.read(config_file)

        settings = squid.SquidConfiguration(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()
        variables = {'OSG_SQUID_LOCATION': 'example.com:3128'}
        for var in variables:
            self.assertTrue(attributes.has_key(var),
                            "Attribute %s missing" % var)
            self.assertEqual(attributes[var],
                             variables[var],
                             "Wrong value obtained for %s, got %s but " \
                             "expected %s" % (var, attributes[var], variables[var]))
Пример #14
0
        settings = squid.SquidConfiguration(logger=global_logger)
        try:
            settings.parse_configuration(configuration)
        except Exception, e:
            self.fail("Received exception while parsing configuration: %s" % e)

        attributes = settings.get_attributes()
        self.assertFalse(settings.check_attributes(attributes),
                         "Did not notice invalid host")

        config_file = get_test_config("squid/squid_bad_host2.ini")
        configuration = ConfigParser.SafeConfigParser()
        configuration.read(config_file)

        settings = squid.SquidConfiguration(logger=global_logger)
        try:
            settings.parse_configuration(configuration)
        except Exception, e:
            self.fail("Received exception while parsing configuration")

        attributes = settings.get_attributes()
        self.assertFalse(settings.check_attributes(attributes),
                         "Did not notice invalid host")

    def testBadPort(self):
        """
        Test the check_attributes function when port for the squid proxy is
        not an integer
        """