[hopem,r=]
Fixes is_db_ready() logic Closes-Bug: 1417108
This commit is contained in:
parent
0818e2e471
commit
172c11f7fd
@ -1408,9 +1408,8 @@ def is_db_ready(use_current_context=False, db_rel=None):
|
||||
if allowed_units and local_unit() in allowed_units.split():
|
||||
return True
|
||||
|
||||
# If relation has units
|
||||
return False
|
||||
rel_has_units = True
|
||||
|
||||
# If neither relation has units then we are probably in sqllite mode return
|
||||
# True.
|
||||
# If neither relation has units then we are probably in sqlite mode so
|
||||
# return True.
|
||||
return not rel_has_units
|
||||
|
@ -352,20 +352,28 @@ class TestKeystoneUtils(CharmTestCase):
|
||||
self.assertEqual(utils.get_admin_passwd(), 'supersecretgen')
|
||||
|
||||
def test_is_db_ready(self):
|
||||
allowed_units = None
|
||||
|
||||
def fake_rel_get(attribute=None, *args, **kwargs):
|
||||
if attribute == 'allowed_units':
|
||||
return allowed_units
|
||||
|
||||
self.relation_get.side_effect = fake_rel_get
|
||||
|
||||
self.relation_id.return_value = 'shared-db:0'
|
||||
self.relation_ids.return_value = [self.relation_id.return_value]
|
||||
self.relation_ids.return_value = ['shared-db:0']
|
||||
self.local_unit.return_value = 'unit/0'
|
||||
self.relation_get.return_value = 'unit/0'
|
||||
allowed_units = 'unit/0'
|
||||
self.assertTrue(utils.is_db_ready(use_current_context=True))
|
||||
|
||||
self.relation_ids.return_value = ['acme:0']
|
||||
self.assertRaises(utils.is_db_ready, use_current_context=True)
|
||||
|
||||
self.related_units.return_value = ['unit/0']
|
||||
self.relation_ids.return_value = [self.relation_id.return_value]
|
||||
self.relation_ids.return_value = ['shared-db:0', 'shared-db:1']
|
||||
self.assertTrue(utils.is_db_ready())
|
||||
|
||||
self.relation_get.return_value = 'unit/1'
|
||||
allowed_units = 'unit/1'
|
||||
self.assertFalse(utils.is_db_ready())
|
||||
|
||||
self.related_units.return_value = []
|
||||
|
Loading…
Reference in New Issue
Block a user