diff options
author | Felipe Reyes <felipe.reyes@canonical.com> | 2018-05-17 22:32:11 +0000 |
---|---|---|
committer | Felipe Reyes <felipe.reyes@canonical.com> | 2018-05-17 22:32:11 +0000 |
commit | fdb156493422b210781526a82aa7c2e4a7f9c225 (patch) | |
tree | 5c6b912e51afbdd7f3b8863b8be8b539f76bbff8 | |
parent | e9358130e9d4060774c7d266a195a388aee92bb0 (diff) |
Fix unit tests failures
-rw-r--r-- | unit_tests/test_hooks.py | 25 |
1 files changed, 16 insertions, 9 deletions
diff --git a/unit_tests/test_hooks.py b/unit_tests/test_hooks.py index 603b149..7cc7f41 100644 --- a/unit_tests/test_hooks.py +++ b/unit_tests/test_hooks.py @@ -36,19 +36,22 @@ class MongoHooksTest(CharmTestCase): self.config.side_effect = self.test_config.get self.relation_get.side_effect = self.test_relation.get + @patch.object(hooks, 'get_replicaset_status') @patch.object(hooks, 'restart_mongod') @patch.object(hooks, 'enable_replset') # Note: patching the os.environ dictionary in-line here so there's no # additional parameter sent into the function @patch.dict('os.environ', JUJU_UNIT_NAME='fake-unit/0') def test_replica_set_relation_joined(self, mock_enable_replset, - mock_restart): + mock_restart, + mock_get_replset_status): self.unit_get.return_value = 'private.address' self.test_config.set('port', '1234') self.test_config.set('replicaset', 'fake-replicaset') self.relation_id.return_value = 'fake-relation-id' mock_enable_replset.return_value = False + mock_get_replset_status.return_value = 'PRIMARY' hooks.replica_set_relation_joined() @@ -276,17 +279,22 @@ class MongoHooksTest(CharmTestCase): mock_subprocess.assert_called_once_with(expected_cmd, shell=True) self.assertFalse(rv) + @patch.object(hooks, 'run_admin_command') + @patch.object(hooks, 'is_leader') + @patch.object(hooks, 'get_replicaset_status') @patch.object(hooks, 'am_i_primary') @patch.object(hooks, 'init_replset') @patch.object(hooks, 'relation_get') @patch.object(hooks, 'peer_units') - @patch.object(hooks, 'oldest_peer') @patch.object(hooks, 'join_replset') @patch.object(hooks, 'unit_get') def test_replica_set_relation_changed(self, mock_unit_get, - mock_join_replset, mock_oldest_peer, - mock_peer_units, mock_relation_get, - mock_init_replset, mock_is_primary): + mock_join_replset, mock_peer_units, + mock_relation_get, mock_init_replset, + mock_is_primary, + mock_get_replset_status, + mock_is_leader, + mock_run_admin_cmd): # set the unit_get('private-address') mock_unit_get.return_value = 'juju-local-unit-0.local' mock_relation_get.return_value = None @@ -298,6 +306,9 @@ class MongoHooksTest(CharmTestCase): # Test remote hostname is valid, but master is somehow not defined mock_join_replset.reset_mock() mock_relation_get.return_value = 'juju-local-unit-0' + mock_is_leader.return_value = False + mock_run_admin_cmd.return_value = {'myState': hooks.MONGO_PRIMARY} + mock_get_replset_status.return_value = 'PRIMARY' hooks.replica_set_relation_changed() @@ -306,9 +317,7 @@ class MongoHooksTest(CharmTestCase): # Test when not oldest peer, don't init replica set mock_join_replset.reset_mock() mock_init_replset.reset_mock() - mock_oldest_peer.reset_mock() mock_peer_units.return_value = ['mongodb/1', 'mongodb/2'] - mock_oldest_peer.return_value = False hooks.replica_set_relation_changed() @@ -317,8 +326,6 @@ class MongoHooksTest(CharmTestCase): # Test when its also the PRIMARY mock_relation_get.reset_mock() mock_relation_get.side_effect = ['juju-remote-unit-0', '12345'] - mock_oldest_peer.reset_mock() - mock_oldest_peer.return_value = False mock_is_primary.reset_mock() mock_is_primary.return_value = True mock_join_replset.reset_mock() |