diff --git a/trove/tests/unittests/cluster/test_cluster.py b/trove/tests/unittests/cluster/test_cluster.py index 5d1499e309..820464e93d 100644 --- a/trove/tests/unittests/cluster/test_cluster.py +++ b/trove/tests/unittests/cluster/test_cluster.py @@ -25,6 +25,7 @@ from trove.common import exception from trove.common import remote from trove.common.strategies.cluster.experimental.mongodb import ( api as mongodb_api) +from trove.common import utils from trove.datastore import models as datastore_models from trove.instance import models as inst_models from trove.instance.models import DBInstance @@ -171,6 +172,7 @@ class ClusterTest(trove_testtools.TestCase): self.assertRaises(exception.UnprocessableEntity, self.cluster.add_shard) + @patch.object(utils, 'generate_uuid', Mock(return_value='new-shard-id')) @patch.object(datastore_models.DatastoreVersion, 'load_by_uuid') @patch.object(task_api, 'load') @patch.object(Cluster, 'update_db') @@ -209,4 +211,5 @@ class ClusterTest(trove_testtools.TestCase): self.cluster.add_shard() mock_update_db.assert_called_with( task_status=ClusterTasks.ADDING_SHARD) - mock_task_api.mongodb_add_shard_cluster.assert_called + mock_task_api.mongodb_add_shard_cluster.assert_called_with( + self.cluster.id, 'new-shard-id', 'rs2') diff --git a/trove/tests/unittests/cluster/test_cluster_controller.py b/trove/tests/unittests/cluster/test_cluster_controller.py index 824cd80762..37f46ee025 100644 --- a/trove/tests/unittests/cluster/test_cluster_controller.py +++ b/trove/tests/unittests/cluster/test_cluster_controller.py @@ -221,7 +221,7 @@ class TestClusterController(TestCase): cluster = Mock() mock_cluster_load.return_value = cluster self.controller.delete(req, tenant_id, cluster_id) - cluster.delete.assert_called + cluster.delete.assert_called_with() class TestClusterControllerWithStrategy(TestCase): diff --git a/trove/tests/unittests/cluster/test_cluster_vertica_controller.py b/trove/tests/unittests/cluster/test_cluster_vertica_controller.py index f8ca9df773..bffb1346c1 100644 --- a/trove/tests/unittests/cluster/test_cluster_vertica_controller.py +++ b/trove/tests/unittests/cluster/test_cluster_vertica_controller.py @@ -205,7 +205,7 @@ class TestClusterController(trove_testtools.TestCase): cluster = Mock() mock_cluster_load.return_value = cluster self.controller.delete(req, tenant_id, cluster_id) - cluster.delete.assert_called + cluster.delete.assert_called_with() class TestClusterControllerWithStrategy(trove_testtools.TestCase): diff --git a/trove/tests/unittests/cluster/test_vertica_cluster.py b/trove/tests/unittests/cluster/test_vertica_cluster.py index 24a0fde2ab..3fd04d006b 100644 --- a/trove/tests/unittests/cluster/test_vertica_cluster.py +++ b/trove/tests/unittests/cluster/test_vertica_cluster.py @@ -211,7 +211,8 @@ class ClusterTest(trove_testtools.TestCase): self.datastore, self.datastore_version, instances) - mock_task_api.create_cluster.assert_called + mock_task_api.return_value.create_cluster.assert_called_with( + mock_db_create.return_value.id) self.assertEqual(3, mock_ins_create.call_count) @patch.object(vertica_api, 'CONF') @@ -246,7 +247,8 @@ class ClusterTest(trove_testtools.TestCase): self.datastore, self.datastore_version, instances) - mock_task_api.create_cluster.assert_called + mock_task_api.return_value.create_cluster.assert_called_with( + mock_db_create.return_value.id) self.assertEqual(3, mock_ins_create.call_count) def test_delete_bad_task_status(self): diff --git a/trove/tests/unittests/guestagent/test_dbaas.py b/trove/tests/unittests/guestagent/test_dbaas.py index 3dc41144d0..f0d94937fa 100644 --- a/trove/tests/unittests/guestagent/test_dbaas.py +++ b/trove/tests/unittests/guestagent/test_dbaas.py @@ -363,7 +363,8 @@ class MySqlAdminTest(testtools.TestCase): with patch.object(self.mySqlAdmin, '_get_user', return_value=user): with patch.object(self.mySqlAdmin, 'grant_access'): self.mySqlAdmin.update_attributes('test_usr', '%', user_attrs) - self.mySqlAdmin.grant_access.assert_called() + self.mySqlAdmin.grant_access.assert_called_with( + 'new_name', '%', set([])) args, _ = dbaas.LocalSqlClient.execute.call_args_list[1] expected = ("UPDATE mysql.user SET User='new_name' " "WHERE User = 'test_user' AND Host = '%';") @@ -381,7 +382,8 @@ class MySqlAdminTest(testtools.TestCase): with patch.object(self.mySqlAdmin, '_get_user', return_value=user): with patch.object(self.mySqlAdmin, 'grant_access'): self.mySqlAdmin.update_attributes('test_usr', '%', user_attrs) - self.mySqlAdmin.grant_access.assert_called() + self.mySqlAdmin.grant_access.assert_called_with( + 'test_usr', 'new_host', set([])) args, _ = dbaas.LocalSqlClient.execute.call_args_list[1] expected = ("UPDATE mysql.user SET Host='new_host' " "WHERE User = 'test_user' AND Host = '%';") diff --git a/trove/tests/unittests/taskmanager/test_api.py b/trove/tests/unittests/taskmanager/test_api.py index 344ba09a1b..a1df3c8f52 100644 --- a/trove/tests/unittests/taskmanager/test_api.py +++ b/trove/tests/unittests/taskmanager/test_api.py @@ -82,8 +82,11 @@ class ApiTest(trove_testtools.TestCase): @patch.object(agent_models, 'AgentHeartBeat') def test_delete_heartbeat(self, mock_agent_heart_beat): + mock_heartbeat = Mock() + mock_agent_heart_beat.return_value.find_by_instance_id = Mock( + return_value=mock_heartbeat) self.api._delete_heartbeat('some-cluster-id') - mock_agent_heart_beat.return_value.delete.assert_called() + mock_heartbeat.delete.assert_called_with() @patch.object(agent_models, 'AgentHeartBeat') def test_exception_delete_heartbeat(self, mock_agent_heart_beat): diff --git a/trove/tests/unittests/taskmanager/test_models.py b/trove/tests/unittests/taskmanager/test_models.py index 2e6244a01c..9ec8ccc248 100644 --- a/trove/tests/unittests/taskmanager/test_models.py +++ b/trove/tests/unittests/taskmanager/test_models.py @@ -18,7 +18,7 @@ import uuid from cinderclient import exceptions as cinder_exceptions import cinderclient.v2.client as cinderclient -from mock import Mock, MagicMock, patch +from mock import Mock, MagicMock, patch, PropertyMock from novaclient import exceptions as nova_exceptions import novaclient.v2.flavors import novaclient.v2.servers @@ -784,8 +784,21 @@ class BuiltInstanceTasksTest(trove_testtools.TestCase): @patch.object(BaseInstance, 'update_db') def test_attach_replica(self, mock_update_db): master = MagicMock() - self.instance_task.attach_replica(master) - self.instance_task._guest.make_read_only.assert_called() + replica_context = Mock() + mock_guest = MagicMock() + mock_guest.get_replica_context = Mock(return_value=replica_context) + type(master).guest = PropertyMock(return_value=mock_guest) + + config_content = {'config_contents': 'some junk'} + replica_config = MagicMock() + replica_config.config_contents = config_content + + with patch.object(taskmanager_models.BuiltInstanceTasks, + '_render_replica_config', + return_value=replica_config): + self.instance_task.attach_replica(master) + self.instance_task._guest.attach_replica.assert_called_with( + replica_context, config_content) mock_update_db.assert_called_with(slave_of_id=master.id) def test_error_attach_replica(self): diff --git a/trove/tests/unittests/taskmanager/test_vertica_clusters.py b/trove/tests/unittests/taskmanager/test_vertica_clusters.py index e5790ae044..e7733aad4d 100644 --- a/trove/tests/unittests/taskmanager/test_vertica_clusters.py +++ b/trove/tests/unittests/taskmanager/test_vertica_clusters.py @@ -119,7 +119,7 @@ class VerticaClusterTasksTest(trove_testtools.TestCase): InstanceServiceStatus( ServiceStatuses.NEW)) self.clustertasks.create_cluster(Mock(), self.cluster_id) - mock_reset_task.assert_called() + mock_reset_task.assert_called_with() @patch.object(ClusterTasks, 'reset_task') @patch.object(ClusterTasks, 'get_guest') @@ -140,8 +140,8 @@ class VerticaClusterTasksTest(trove_testtools.TestCase): self.clustertasks.create_cluster(Mock(), self.cluster_id) mock_guest.return_value.install_cluster.assert_called_with(['10.0.0.2'] ) - mock_reset_task.assert_called() - mock_guest.return_value.cluster_complete.assert_called() + mock_reset_task.assert_called_with() + mock_guest.return_value.cluster_complete.assert_called_with() @patch.object(ClusterTasks, 'update_statuses_on_failure') @patch.object(ClusterTasks, 'reset_task') @@ -165,8 +165,8 @@ class VerticaClusterTasksTest(trove_testtools.TestCase): with patch.object(ClusterTasks, 'get_guest', return_value=guest_client): self.clustertasks.create_cluster(Mock(), self.cluster_id) - mock_update_status.assert_called() - mock_reset_task.assert_called() + mock_update_status.assert_called_with('1232') + mock_reset_task.assert_called_with() class VerticaTaskManagerAPITest(trove_testtools.TestCase): @@ -180,10 +180,9 @@ class VerticaTaskManagerAPITest(trove_testtools.TestCase): self.call_context.cast = Mock() self.rpc_api_version = '1.0' - @patch.object(rpc, 'get_client') - def test_task_manager_api__cast(self, mock_rpc_client): + def test_task_manager_api_cast(self): self.api._cast(method_name='test_method', version=self.rpc_api_version) - mock_rpc_client.assert_called() + self.call_context.cast.assert_called_with(self.context, 'test_method') class VerticaTaskManagerStrategyTest(trove_testtools.TestCase):