def test_unrequired_with_default_values(self): """ Tests an evar that isn't required, but has a default. """ store = ConfigStore({ 'A_BOOL_SETTING': EnvironmentVariable( name='BOOL_EVAR', is_required=False, default_val='true', filters=[value_to_bool], ), }) store.load_values() self.assertTrue(store['A_BOOL_SETTING'])
def test_unrequired_without_default_values(self): """ Tests an evar that isn't required, and has no default. """ store = ConfigStore({ 'A_BOOL_SETTING': EnvironmentVariable( name='BOOL_EVAR', is_required=False, filters=[value_to_bool], ), }) store.load_values() # No value was specified in an evar. The default default value is # None, which gets filtered to False. self.assertEqual(store['A_BOOL_SETTING'], False)
def test_simple_load_and_filter(self): """ Tests a simple evar transformation. """ store = ConfigStore({ 'LOGLEVEL': EnvironmentVariable( name='LOGLEVEL', help_txt='The desired logging level (DEBUG|INFO|WARN|ERROR).', is_required=False, default_val='INFO', filters=[value_to_python_log_level], ) }) # The filter uppercases this and makes sure it's valid. os.environ['LOGLEVEL'] = 'info' store.load_values() # The end result is a properly formed Python logging level. self.assertEqual(store['LOGLEVEL'], logging.INFO)
def test_empty_store(self): """ Test empty ConfigStore being validated. """ store = ConfigStore({}) store.load_values()