Merge "Add type check for zuul conf"
This commit is contained in:
commit
46ff3fd009
|
@ -30,3 +30,6 @@ server=localhost
|
||||||
port=25
|
port=25
|
||||||
default_from=zuul@example.com
|
default_from=zuul@example.com
|
||||||
default_to=you@example.com
|
default_to=you@example.com
|
||||||
|
|
||||||
|
[web]
|
||||||
|
static_cache_expiry=1200
|
||||||
|
|
|
@ -0,0 +1,37 @@
|
||||||
|
# Copyright 2018 EasyStack, Inc.
|
||||||
|
#
|
||||||
|
# Licensed under the Apache License, Version 2.0 (the "License"); you may
|
||||||
|
# not use this file except in compliance with the License. You may obtain
|
||||||
|
# a copy of the License at
|
||||||
|
#
|
||||||
|
# http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
#
|
||||||
|
# Unless required by applicable law or agreed to in writing, software
|
||||||
|
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
||||||
|
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
||||||
|
# License for the specific language governing permissions and limitations
|
||||||
|
# under the License.
|
||||||
|
|
||||||
|
import os
|
||||||
|
|
||||||
|
import configparser
|
||||||
|
|
||||||
|
from tests.base import BaseTestCase
|
||||||
|
from tests.base import FIXTURE_DIR
|
||||||
|
from zuul.lib.config import get_default
|
||||||
|
|
||||||
|
|
||||||
|
class TestDefaultConfigValue(BaseTestCase):
|
||||||
|
config_file = 'zuul.conf'
|
||||||
|
|
||||||
|
def setUp(self):
|
||||||
|
super(TestDefaultConfigValue, self).setUp()
|
||||||
|
self.config = configparser.ConfigParser()
|
||||||
|
self.config.read(os.path.join(FIXTURE_DIR, self.config_file))
|
||||||
|
|
||||||
|
def test_default_config_value(self):
|
||||||
|
default_value = get_default(self.config,
|
||||||
|
'web',
|
||||||
|
'static_cache_expiry',
|
||||||
|
default=3600)
|
||||||
|
self.assertEqual(1200, default_value)
|
|
@ -15,7 +15,12 @@ import os
|
||||||
|
|
||||||
def get_default(config, section, option, default=None, expand_user=False):
|
def get_default(config, section, option, default=None, expand_user=False):
|
||||||
if config.has_option(section, option):
|
if config.has_option(section, option):
|
||||||
value = config.get(section, option)
|
# Need to be ensured that we get suitable
|
||||||
|
# type from config file by default value
|
||||||
|
if isinstance(default, int):
|
||||||
|
value = config.getint(section, option)
|
||||||
|
else:
|
||||||
|
value = config.get(section, option)
|
||||||
else:
|
else:
|
||||||
value = default
|
value = default
|
||||||
if expand_user and value:
|
if expand_user and value:
|
||||||
|
|
Loading…
Reference in New Issue