示例#1
0
    def setUp(self):
        def side_effect(arg1, arg2):
            if arg1 == 'conf_test_section' and arg2 == 'conf_test_option':
                return 'conf_test_value'
            elif arg1 == 'conf_test_section' and arg2 == 'conf_null_option':
                return ConfigHelper.NONE_VALUE
            else:
                raise configparser.NoSectionError

        super(TestConfigHelper, self).setUp()
        self.config_helper = ConfigHelper()
        self.config_helper.conf = MagicMock()
        self.config_helper.conf.get = Mock(side_effect=side_effect)
示例#2
0
 def setUp(self):
     def side_effect(arg1, arg2):
         if arg1 == 'conf_test_section' and arg2 == 'conf_test_option':
             return 'conf_test_value'
         elif arg1 == 'conf_test_section' and arg2 == 'conf_null_option':
             return ConfigHelper.NONE_VALUE
         else:
             raise configparser.NoSectionError
     super(TestConfigHelper, self).setUp()
     self.config_helper = ConfigHelper()
     self.config_helper.conf = MagicMock()
     self.config_helper.conf.get = Mock(side_effect=side_effect)
示例#3
0
    def _set_variables(self, host, port, keyfile, certfile, cert_reqs,
                       ssl_version, ca_certs, do_handshake_on_connect,
                       suppress_ragged_eofs):
        conf = ConfigHelper()
        self.host = conf.get_valid_value(host, 'server',
                                         'host', conf.DEFAULT_HOST)
        self.port = int(conf.get_valid_value(port, 'server',
                                             'port', conf.DEFAULT_PORT))
        self.keyfile = conf.get_valid_value(
            keyfile, 'server', 'keyfile', conf.DEFAULT_KEYFILE)

        self.certfile = conf.get_valid_value(
            certfile, 'server', 'certfile', conf.DEFAULT_CERTFILE)

        self.cert_reqs = getattr(ssl, conf.get_valid_value(
            cert_reqs, 'server', 'cert_reqs', 'CERT_NONE'))

        self.ssl_version = getattr(ssl, conf.get_valid_value(
            ssl_version, 'server', 'ssl_version', conf.DEFAULT_SSL_VERSION))

        self.ca_certs = conf.get_valid_value(
            ca_certs, 'server', 'ca_certs', None)

        if conf.get_valid_value(
                do_handshake_on_connect, 'server',
                'do_handshake_on_connect', 'True') == 'True':
            self.do_handshake_on_connect = True
        else:
            self.do_handshake_on_connect = False

        if conf.get_valid_value(
                suppress_ragged_eofs, 'server',
                'suppress_ragged_eofs', 'True') == 'True':
            self.suppress_ragged_eofs = True
        else:
            self.suppress_ragged_eofs = False
示例#4
0
    def _set_variables(self, host, port, keyfile, certfile,
                       cert_reqs, ssl_version, ca_certs,
                       do_handshake_on_connect, suppress_ragged_eofs,
                       username, password, timeout):
        conf = ConfigHelper()

        # TODO: set this to a host list
        self.host_list_str = conf.get_valid_value(
            host, self.config, 'host', conf.DEFAULT_HOST)

        self.host_list = self._build_host_list(self.host_list_str)

        self.host = self.host_list[0]

        self.port = int(conf.get_valid_value(
            port, self.config, 'port', conf.DEFAULT_PORT))

        self.keyfile = conf.get_valid_value(
            keyfile, self.config, 'keyfile', None)

        self.certfile = conf.get_valid_value(
            certfile, self.config, 'certfile', None)

        self.cert_reqs = getattr(ssl, conf.get_valid_value(
            cert_reqs, self.config, 'cert_reqs', 'CERT_REQUIRED'))

        self.ssl_version = getattr(ssl, conf.get_valid_value(
            ssl_version, self.config, 'ssl_version', conf.DEFAULT_SSL_VERSION))

        self.ca_certs = conf.get_valid_value(
            ca_certs, self.config, 'ca_certs', conf.DEFAULT_CA_CERTS)

        if conf.get_valid_value(
                do_handshake_on_connect, self.config,
                'do_handshake_on_connect', 'True') == 'True':
            self.do_handshake_on_connect = True
        else:
            self.do_handshake_on_connect = False

        if conf.get_valid_value(
                suppress_ragged_eofs, self.config,
                'suppress_ragged_eofs', 'True') == 'True':
            self.suppress_ragged_eofs = True
        else:
            self.suppress_ragged_eofs = False

        self.username = conf.get_valid_value(
            username, self.config, 'username', conf.DEFAULT_USERNAME)

        self.password = conf.get_valid_value(
            password, self.config, 'password', conf.DEFAULT_PASSWORD)

        self.timeout = int(conf.get_valid_value(
            timeout, self.config, 'timeout', conf.DEFAULT_TIMEOUT))
        if self.timeout < 0:
            self.logger.warning(
                "Negative timeout value specified, "
                "resetting to safe default of {0} seconds".format(
                    conf.DEFAULT_TIMEOUT))
            self.timeout = conf.DEFAULT_TIMEOUT
示例#5
0
    def _set_variables(self, host, port, keyfile, certfile,
                       cert_reqs, ssl_version, ca_certs,
                       do_handshake_on_connect, suppress_ragged_eofs,
                       username, password):
        conf = ConfigHelper()

        self.host = conf.get_valid_value(
            host, self.config, 'host', conf.DEFAULT_HOST)

        self.port = int(conf.get_valid_value(
            port, self.config, 'port', conf.DEFAULT_PORT))

        self.keyfile = conf.get_valid_value(
            keyfile, self.config, 'keyfile', None)

        self.certfile = conf.get_valid_value(
            certfile, self.config, 'certfile', None)

        self.cert_reqs = getattr(ssl, conf.get_valid_value(
            cert_reqs, self.config, 'cert_reqs', 'CERT_REQUIRED'))

        self.ssl_version = getattr(ssl, conf.get_valid_value(
            ssl_version, self.config, 'ssl_version', conf.DEFAULT_SSL_VERSION))

        self.ca_certs = conf.get_valid_value(
            ca_certs, self.config, 'ca_certs', conf.DEFAULT_CA_CERTS)

        if conf.get_valid_value(
                do_handshake_on_connect, self.config,
                'do_handshake_on_connect', 'True') == 'True':
            self.do_handshake_on_connect = True
        else:
            self.do_handshake_on_connect = False

        if conf.get_valid_value(
                suppress_ragged_eofs, self.config,
                'suppress_ragged_eofs', 'True') == 'True':
            self.suppress_ragged_eofs = True
        else:
            self.suppress_ragged_eofs = False

        self.username = conf.get_valid_value(
            username, self.config, 'username', conf.DEFAULT_USERNAME)

        self.password = conf.get_valid_value(
            password, self.config, 'password', conf.DEFAULT_PASSWORD)
示例#6
0
class TestConfigHelper(TestCase):

    def setUp(self):
        def side_effect(arg1, arg2):
            if arg1 == 'conf_test_section' and arg2 == 'conf_test_option':
                return 'conf_test_value'
            elif arg1 == 'conf_test_section' and arg2 == 'conf_null_option':
                return ConfigHelper.NONE_VALUE
            else:
                raise configparser.NoSectionError
        super(TestConfigHelper, self).setUp()
        self.config_helper = ConfigHelper()
        self.config_helper.conf = MagicMock()
        self.config_helper.conf.get = Mock(side_effect=side_effect)

    def tearDown(self):
        super(TestConfigHelper, self).tearDown()

    def test_get_valid_value_null_input(self):
        value = self.config_helper.get_valid_value(None, None, None, None)
        self.assertEqual(None, value)

    def test_get_valid_value_direct_value_is_none(self):
        value = self.config_helper.get_valid_value(ConfigHelper.NONE_VALUE,
                                                   'conf_test_section',
                                                   'conf_test_option',
                                                   'test_default_option')
        self.assertFalse(self.config_helper.conf.get.called)
        self.assertEqual(None, value)

    def test_get_valid_value_config_value_is_none(self):
        value = self.config_helper.get_valid_value(None,
                                                   'conf_test_section',
                                                   'conf_null_option',
                                                   'test_default_option')
        self.assertTrue(self.config_helper.conf.get.called)
        self.config_helper.conf.get.assert_called_with('conf_test_section',
                                                       'conf_null_option')
        self.assertEqual(None, value)

    def test_get_valid_value_returns_direct(self):
        value = self.config_helper.get_valid_value('test_direct_value',
                                                   'conf_test_section',
                                                   'conf_test_option',
                                                   'test_default_value')
        self.assertFalse(self.config_helper.conf.get.called)
        self.assertEqual('test_direct_value', value)

    def test_get_valid_value_returns_conf_value(self):
        value = self.config_helper.get_valid_value(None,
                                                   'conf_test_section',
                                                   'conf_test_option',
                                                   'test_default_value')
        self.assertTrue(self.config_helper.conf.get.called)
        self.config_helper.conf.get.assert_called_with('conf_test_section',
                                                       'conf_test_option')
        self.assertEqual(value, 'conf_test_value')

    def test_get_valid_value_returns_default(self):
        value = self.config_helper.get_valid_value(None,
                                                   'invalid_section',
                                                   'invalid_option',
                                                   'test_default_value')
        self.assertTrue(self.config_helper.conf.get.called)
        self.config_helper.conf.get.assert_called_with('invalid_section',
                                                       'invalid_option')
        self.assertEqual(value, 'test_default_value')
示例#7
0
    def _set_variables(self, host, port, keyfile, certfile,
                       cert_reqs, ssl_version, ca_certs,
                       do_handshake_on_connect, suppress_ragged_eofs,
                       username, password, timeout):
        conf = ConfigHelper()

        self.host = conf.get_valid_value(
            host, self.config, 'host', conf.DEFAULT_HOST)

        self.port = int(conf.get_valid_value(
            port, self.config, 'port', conf.DEFAULT_PORT))

        self.keyfile = conf.get_valid_value(
            keyfile, self.config, 'keyfile', None)

        self.certfile = conf.get_valid_value(
            certfile, self.config, 'certfile', None)

        self.cert_reqs = getattr(ssl, conf.get_valid_value(
            cert_reqs, self.config, 'cert_reqs', 'CERT_REQUIRED'))

        self.ssl_version = getattr(ssl, conf.get_valid_value(
            ssl_version, self.config, 'ssl_version', conf.DEFAULT_SSL_VERSION))

        self.ca_certs = conf.get_valid_value(
            ca_certs, self.config, 'ca_certs', conf.DEFAULT_CA_CERTS)

        if conf.get_valid_value(
                do_handshake_on_connect, self.config,
                'do_handshake_on_connect', 'True') == 'True':
            self.do_handshake_on_connect = True
        else:
            self.do_handshake_on_connect = False

        if conf.get_valid_value(
                suppress_ragged_eofs, self.config,
                'suppress_ragged_eofs', 'True') == 'True':
            self.suppress_ragged_eofs = True
        else:
            self.suppress_ragged_eofs = False

        self.username = conf.get_valid_value(
            username, self.config, 'username', conf.DEFAULT_USERNAME)

        self.password = conf.get_valid_value(
            password, self.config, 'password', conf.DEFAULT_PASSWORD)

        self.timeout = conf.get_valid_value(
            timeout, self.config, 'timeout', conf.DEFAULT_TIMEOUT)
        if self.timeout < 0:
            self.logger.warning(
                "Negative timeout value specified, "
                "resetting to safe default of {0} seconds".format(
                    conf.DEFAULT_TIMEOUT))
            self.timeout = conf.DEFAULT_TIMEOUT
示例#8
0
class TestConfigHelper(TestCase):
    def setUp(self):
        def side_effect(arg1, arg2):
            if arg1 == 'conf_test_section' and arg2 == 'conf_test_option':
                return 'conf_test_value'
            elif arg1 == 'conf_test_section' and arg2 == 'conf_null_option':
                return ConfigHelper.NONE_VALUE
            else:
                raise configparser.NoSectionError

        super(TestConfigHelper, self).setUp()
        self.config_helper = ConfigHelper()
        self.config_helper.conf = MagicMock()
        self.config_helper.conf.get = Mock(side_effect=side_effect)

    def tearDown(self):
        super(TestConfigHelper, self).tearDown()

    def test_get_valid_value_null_input(self):
        value = self.config_helper.get_valid_value(None, None, None, None)
        self.assertEqual(None, value)

    def test_get_valid_value_direct_value_is_none(self):
        value = self.config_helper.get_valid_value(ConfigHelper.NONE_VALUE,
                                                   'conf_test_section',
                                                   'conf_test_option',
                                                   'test_default_option')
        self.assertFalse(self.config_helper.conf.get.called)
        self.assertEqual(None, value)

    def test_get_valid_value_config_value_is_none(self):
        value = self.config_helper.get_valid_value(None, 'conf_test_section',
                                                   'conf_null_option',
                                                   'test_default_option')
        self.assertTrue(self.config_helper.conf.get.called)
        self.config_helper.conf.get.assert_called_with('conf_test_section',
                                                       'conf_null_option')
        self.assertEqual(None, value)

    def test_get_valid_value_returns_direct(self):
        value = self.config_helper.get_valid_value('test_direct_value',
                                                   'conf_test_section',
                                                   'conf_test_option',
                                                   'test_default_value')
        self.assertFalse(self.config_helper.conf.get.called)
        self.assertEqual('test_direct_value', value)

    def test_get_valid_value_returns_conf_value(self):
        value = self.config_helper.get_valid_value(None, 'conf_test_section',
                                                   'conf_test_option',
                                                   'test_default_value')
        self.assertTrue(self.config_helper.conf.get.called)
        self.config_helper.conf.get.assert_called_with('conf_test_section',
                                                       'conf_test_option')
        self.assertEqual(value, 'conf_test_value')

    def test_get_valid_value_returns_default(self):
        value = self.config_helper.get_valid_value(None, 'invalid_section',
                                                   'invalid_option',
                                                   'test_default_value')
        self.assertTrue(self.config_helper.conf.get.called)
        self.config_helper.conf.get.assert_called_with('invalid_section',
                                                       'invalid_option')
        self.assertEqual(value, 'test_default_value')
示例#9
0
    def _set_variables(self, host, port, keyfile, certfile, cert_reqs,
                       ssl_version, ca_certs, do_handshake_on_connect,
                       suppress_ragged_eofs):
        conf = ConfigHelper()
        self.host = conf.get_valid_value(host, 'server', 'host',
                                         conf.DEFAULT_HOST)
        self.port = int(
            conf.get_valid_value(port, 'server', 'port', conf.DEFAULT_PORT))
        self.keyfile = conf.get_valid_value(keyfile, 'server', 'keyfile',
                                            conf.DEFAULT_KEYFILE)

        self.certfile = conf.get_valid_value(certfile, 'server', 'certfile',
                                             conf.DEFAULT_CERTFILE)

        self.cert_reqs = getattr(
            ssl,
            conf.get_valid_value(cert_reqs, 'server', 'cert_reqs',
                                 'CERT_NONE'))

        self.ssl_version = getattr(
            ssl,
            conf.get_valid_value(ssl_version, 'server', 'ssl_version',
                                 conf.DEFAULT_SSL_VERSION))

        self.ca_certs = conf.get_valid_value(ca_certs, 'server', 'ca_certs',
                                             None)

        if conf.get_valid_value(do_handshake_on_connect, 'server',
                                'do_handshake_on_connect', 'True') == 'True':
            self.do_handshake_on_connect = True
        else:
            self.do_handshake_on_connect = False

        if conf.get_valid_value(suppress_ragged_eofs, 'server',
                                'suppress_ragged_eofs', 'True') == 'True':
            self.suppress_ragged_eofs = True
        else:
            self.suppress_ragged_eofs = False