Correct resolve_CONFIGS force_update

A typo in resolve_CONFIGS reveresed the desired behaviour so
force_update=True would not force an update and vice versa.

Change-Id: I4e19e7ab35f09f4e828632b4dc6074d2bd367356
Closes-Bug: #1848440
This commit is contained in:
Liam Young 2019-10-17 09:21:46 +00:00
parent cd84358fa1
commit 5d9592ddca
2 changed files with 28 additions and 2 deletions

View File

@ -121,7 +121,7 @@ def resolve_CONFIGS(force_update=False):
:rtype: `:class:templating.OSConfigRenderer`
"""
global CONFIGS
if CONFIGS is None or not force_update:
if CONFIGS is None or force_update:
CONFIGS = register_configs()
return CONFIGS

View File

@ -75,11 +75,37 @@ class TestHorizonHooks(CharmTestCase):
self.config.side_effect = self.test_config.get
self.b64decode.side_effect = passthrough
hooks.hooks._config_save = False
hooks.CONFIGS = None
def _call_hook(self, hookname):
hooks.hooks.execute([
'hooks/{}'.format(hookname)])
@patch.object(hooks, 'register_configs')
def test_resolve_CONFIGS(self, _register_configs):
_register_configs.return_value = 'new configs'
self.assertEqual(
hooks.resolve_CONFIGS(),
'new configs')
_register_configs.assert_called_once_with()
@patch.object(hooks, 'register_configs')
def test_resolve_CONFIGS_existing_configs(self, _register_configs):
hooks.CONFIGS = 'existing stuff'
self.assertEqual(
hooks.resolve_CONFIGS(),
'existing stuff')
self.assertFalse(_register_configs.called)
@patch.object(hooks, 'register_configs')
def test_resolve_CONFIGS_existing_configs_force(self, _register_configs):
_register_configs.return_value = 'new configs from force'
hooks.CONFIGS = 'existing stuff'
self.assertEqual(
hooks.resolve_CONFIGS(force_update=True),
'new configs from force')
_register_configs.assert_called_once_with()
@patch.object(hooks, 'determine_packages')
def test_install_hook(self, _determine_packages):
_determine_packages.return_value = []
@ -235,7 +261,7 @@ class TestHorizonHooks(CharmTestCase):
def test_config_changed_do_upgrade(self, _custom_theme):
config_mock1 = MagicMock()
config_mock2 = MagicMock()
config_mocks = [config_mock1, config_mock2]
config_mocks = [config_mock2, config_mock1]
def _register_configs():
return config_mocks.pop()