def test_bootstrapped_not_in_sync_to_synced(self, mock_time):
     self.config.return_value = 3
     self.is_sufficient_peers.return_value = True
     self.is_bootstrapped.return_value = True
     self.cluster_in_sync.side_effect = [False, False, True]
     stat, _ = percona_utils.charm_check_func()
     assert stat == 'active'
 def test_bootstrapped_in_sync(self):
     self.config.return_value = 3
     self.is_sufficient_peers.return_value = True
     self.is_bootstrapped.return_value = True
     self.cluster_in_sync.return_value = True
     stat, _ = percona_utils.charm_check_func()
     assert stat == 'active'
 def test_bootstrapped_not_in_sync(self, mock_time):
     self.config.return_value = 3
     self.is_sufficient_peers.return_value = True
     self.is_bootstrapped.return_value = True
     self.cluster_in_sync.return_value = False
     stat, _ = percona_utils.charm_check_func()
     assert stat == 'blocked'
 def test_bootstrapped_not_in_sync(self):
     self.config.return_value = 3
     self.is_sufficient_peers.return_value = True
     self.is_bootstrapped.return_value = True
     self.cluster_in_sync.return_value = False
     stat, _ = percona_utils.charm_check_func()
     assert stat == 'blocked'
 def test_not_bootstrapped(self):
     self.config.return_value = 3
     self.is_sufficient_peers.return_value = True
     self.is_bootstrapped.return_value = False
     stat, _ = percona_utils.charm_check_func()
     assert stat == 'waiting'
 def test_insufficient_peers(self):
     self.config.return_value = 3
     self.is_sufficient_peers.return_value = False
     stat, _ = percona_utils.charm_check_func()
     assert stat == 'blocked'
 def test_single_unit(self):
     self.config.return_value = None
     self.is_sufficient_peers.return_value = True
     stat, _ = percona_utils.charm_check_func()
     assert stat == 'active'
 def test_not_bootstrapped(self):
     self.config.return_value = 3
     self.is_sufficient_peers.return_value = True
     self.is_bootstrapped.return_value = False
     stat, _ = percona_utils.charm_check_func()
     assert stat == 'waiting'
 def test_insufficient_peers(self):
     self.config.return_value = 3
     self.is_sufficient_peers.return_value = False
     stat, _ = percona_utils.charm_check_func()
     assert stat == 'blocked'
 def test_single_unit(self):
     self.config.return_value = None
     self.is_sufficient_peers.return_value = True
     stat, _ = percona_utils.charm_check_func()
     assert stat == 'active'