def test_check_complete_users(self, mock_client, mock_plugin): mock_instance = mock.Mock(status="ACTIVE", name="mock_instance") mock_client().instances.get.return_value = mock_instance mock_plugin().is_client_exception.return_value = False mock_client().users.get.return_value = users.User( None, { "databases": [{ "name": "bar" }, { "name": "buzz" }], "name": "baz" }, loaded=True) updates = { 'users': [{ 'databases': ['bar', 'biff'], 'name': 'baz', 'password': '******' }, { 'ACTION': 'CREATE', 'databases': ['biff', 'bar'], 'name': 'user2', 'password': '******' }, { 'ACTION': 'DELETE', 'name': 'deleted' }] } trove = os_database.OSDBInstance('test', self._rdef, self._stack) self.assertTrue(trove.check_update_complete(updates)) create_calls = [ mock.call(mock_instance, [{ 'password': '******', 'databases': [{ 'name': 'biff' }, { 'name': 'bar' }], 'name': 'user2' }]) ] delete_calls = [mock.call(mock_instance, 'deleted')] mock_client().users.create.assert_has_calls(create_calls) mock_client().users.delete.assert_has_calls(delete_calls) self.assertEqual(1, mock_client().users.create.call_count) self.assertEqual(1, mock_client().users.delete.call_count) updateattr = mock_client().users.update_attributes updateattr.assert_called_once_with(mock_instance, 'baz', newuserattr={'password': '******'}, hostname=mock.ANY) mock_client().users.grant.assert_called_once_with( mock_instance, 'baz', ['biff']) mock_client().users.revoke.assert_called_once_with( mock_instance, 'baz', ['buzz'])
def data(TEST): cluster1 = clusters.Cluster(clusters.Clusters(None), CLUSTER_DATA_ONE) cluster2 = clusters.Cluster(clusters.Clusters(None), CLUSTER_DATA_TWO) database1 = instances.Instance(instances.Instances(None), DATABASE_DATA_ONE) database2 = instances.Instance(instances.Instances(None), DATABASE_DATA_TWO) bkup1 = backups.Backup(backups.Backups(None), BACKUP_ONE) bkup2 = backups.Backup(backups.Backups(None), BACKUP_TWO) bkup3 = backups.Backup(backups.Backups(None), BACKUP_TWO_INC) user1 = users.User(users.Users(None), USER_ONE) user_db1 = databases.Database(databases.Databases(None), USER_DB_ONE) datastore1 = datastores.Datastore(datastores.Datastores(None), DATASTORE_ONE) version1 = datastores.\ DatastoreVersion(datastores.DatastoreVersions(None), VERSION_ONE) flavor1 = flavors.Flavor(flavors.Flavors(None), FLAVOR_ONE) flavor2 = flavors.Flavor(flavors.Flavors(None), FLAVOR_TWO) flavor3 = flavors.Flavor(flavors.Flavors(None), FLAVOR_THREE) datastore_mongodb = datastores.Datastore(datastores.Datastores(None), DATASTORE_MONGODB) version_mongodb_2_6 = datastores.\ DatastoreVersion(datastores.DatastoreVersions(None), VERSION_MONGODB_2_6) TEST.trove_clusters = utils.TestDataContainer() TEST.trove_clusters.add(cluster1) TEST.trove_clusters.add(cluster2) TEST.databases = utils.TestDataContainer() TEST.database_backups = utils.TestDataContainer() TEST.database_users = utils.TestDataContainer() TEST.database_user_dbs = utils.TestDataContainer() TEST.database_flavors = utils.TestDataContainer() TEST.databases.add(database1) TEST.databases.add(database2) TEST.database_backups.add(bkup1) TEST.database_backups.add(bkup2) TEST.database_backups.add(bkup3) TEST.database_users.add(user1) TEST.database_user_dbs.add(user_db1) TEST.datastores = utils.TestDataContainer() TEST.datastores.add(datastore1) TEST.datastores.add(datastore_mongodb) TEST.database_flavors.add(flavor1, flavor2, flavor3) TEST.datastore_versions = utils.TestDataContainer() TEST.datastore_versions.add(version_mongodb_2_6) TEST.datastore_versions.add(version1)
def data(TEST): database1 = instances.Instance(instances.Instances(None), DATABASE_DATA_ONE) database2 = instances.Instance(instances.Instances(None), DATABASE_DATA_TWO) bkup1 = backups.Backup(backups.Backups(None), BACKUP_ONE) bkup2 = backups.Backup(backups.Backups(None), BACKUP_TWO) bkup3 = backups.Backup(backups.Backups(None), BACKUP_TWO_INC) user1 = users.User(users.Users(None), USER_ONE) user_db1 = databases.Database(databases.Databases(None), USER_DB_ONE) datastore1 = datastores.Datastore(datastores.Datastores(None), DATASTORE_ONE) version1 = datastores.\ DatastoreVersion(datastores.DatastoreVersions(None), VERSION_ONE) version2 = datastores.\ DatastoreVersion(datastores.DatastoreVersions(None), VERSION_TWO) flavor1 = flavors.Flavor(flavors.Flavors(None), FLAVOR_ONE) flavor2 = flavors.Flavor(flavors.Flavors(None), FLAVOR_TWO) flavor3 = flavors.Flavor(flavors.Flavors(None), FLAVOR_THREE) TEST.databases = utils.TestDataContainer() TEST.database_backups = utils.TestDataContainer() TEST.database_users = utils.TestDataContainer() TEST.database_user_dbs = utils.TestDataContainer() TEST.database_flavors = utils.TestDataContainer() TEST.databases.add(database1) TEST.databases.add(database2) TEST.database_backups.add(bkup1) TEST.database_backups.add(bkup2) TEST.database_backups.add(bkup3) TEST.database_users.add(user1) TEST.database_user_dbs.add(user_db1) TEST.datastores = utils.TestDataContainer() TEST.datastores.add(datastore1) TEST.datastore_versions = utils.TestDataContainer() TEST.datastore_versions.add(version1) TEST.datastore_versions.add(version2) TEST.database_flavors.add(flavor1, flavor2, flavor3)
def setUp(self): super(UserTest, self).setUp() self.orig__init = users.User.__init__ users.User.__init__ = Mock(return_value=None) self.user = users.User()
def get_cls_1234_root(self): return users.User(None, self.fake_cls_1234_root, loaded=True)
def get_instance_1234_root(self): return users.User(None, self.fake_instance_1234_root, loaded=True)
def get_instances_1234_users_harry(self): return users.User(None, self.fake_users[2])
def data(TEST): cluster1 = clusters.Cluster(clusters.Clusters(None), CLUSTER_DATA_ONE) cluster2 = clusters.Cluster(clusters.Clusters(None), CLUSTER_DATA_TWO) database1 = instances.Instance(instances.Instances(None), DATABASE_DATA_ONE) database2 = instances.Instance(instances.Instances(None), DATABASE_DATA_TWO) database3 = instances.Instance(instances.Instances(None), DATABASE_DATA_THREE) bkup1 = backups.Backup(backups.Backups(None), BACKUP_ONE) bkup2 = backups.Backup(backups.Backups(None), BACKUP_TWO) bkup3 = backups.Backup(backups.Backups(None), BACKUP_TWO_INC) cfg1 = configurations.Configuration(configurations.Configurations(None), CONFIG_ONE) cfg2 = configurations.Configuration(configurations.Configurations(None), CONFIG_TWO) user1 = users.User(users.Users(None), USER_ONE) user_db1 = databases.Database(databases.Databases(None), USER_DB_ONE) user_root1 = databases.Database(databases.Databases(None), USER_ROOT_ONE) datastore1 = datastores.Datastore(datastores.Datastores(None), DATASTORE_ONE) version1 = datastores.\ DatastoreVersion(datastores.DatastoreVersions(None), VERSION_ONE) version2 = datastores.\ DatastoreVersion(datastores.DatastoreVersions(None), VERSION_TWO) flavor1 = flavors.Flavor(flavors.Flavors(None), FLAVOR_ONE) flavor2 = flavors.Flavor(flavors.Flavors(None), FLAVOR_TWO) flavor3 = flavors.Flavor(flavors.Flavors(None), FLAVOR_THREE) datastore_mongodb = datastores.Datastore(datastores.Datastores(None), DATASTORE_MONGODB) version_mongodb_2_6 = datastores.\ DatastoreVersion(datastores.DatastoreVersions(None), VERSION_MONGODB_2_6) datastore_redis = datastores.Datastore(datastores.Datastores(None), DATASTORE_REDIS) version_redis_3_0 = datastores.\ DatastoreVersion(datastores.DatastoreVersions(None), VERSION_REDIS_3_0) datastore_vertica = datastores.Datastore(datastores.Datastores(None), DATASTORE_VERTICA) version_vertica_7_1 = datastores.\ DatastoreVersion(datastores.DatastoreVersions(None), VERSION_VERTICA_7_1) log1 = instances.DatastoreLog(instances.Instances(None), LOG_1) log2 = instances.DatastoreLog(instances.Instances(None), LOG_2) log3 = instances.DatastoreLog(instances.Instances(None), LOG_3) log4 = instances.DatastoreLog(instances.Instances(None), LOG_4) TEST.trove_clusters = utils.TestDataContainer() TEST.trove_clusters.add(cluster1) TEST.trove_clusters.add(cluster2) TEST.databases = utils.TestDataContainer() TEST.database_backups = utils.TestDataContainer() TEST.database_configurations = utils.TestDataContainer() TEST.database_users = utils.TestDataContainer() TEST.database_user_dbs = utils.TestDataContainer() TEST.database_user_roots = utils.TestDataContainer() TEST.database_flavors = utils.TestDataContainer() TEST.databases.add(database1) TEST.databases.add(database2) TEST.databases.add(database3) TEST.database_backups.add(bkup1) TEST.database_backups.add(bkup2) TEST.database_backups.add(bkup3) TEST.database_configurations.add(cfg1) TEST.database_configurations.add(cfg2) TEST.configuration_parameters = utils.TestDataContainer() for parameter in CONFIG_PARAMS_ONE: TEST.configuration_parameters.add( configurations.ConfigurationParameter( configurations.ConfigurationParameters(None), parameter)) TEST.configuration_instances = utils.TestDataContainer() TEST.configuration_instances.add( configurations.Configuration(configurations.Configurations(None), CONFIG_INSTANCE_ONE)) TEST.database_users.add(user1) TEST.database_user_dbs.add(user_db1) TEST.database_user_roots.add(user_root1) TEST.datastores = utils.TestDataContainer() TEST.datastores.add(datastore_mongodb) TEST.datastores.add(datastore_redis) TEST.datastores.add(datastore_vertica) TEST.datastores.add(datastore1) TEST.database_flavors.add(flavor1, flavor2, flavor3) TEST.datastore_versions = utils.TestDataContainer() TEST.datastore_versions.add(version_vertica_7_1) TEST.datastore_versions.add(version_redis_3_0) TEST.datastore_versions.add(version_mongodb_2_6) TEST.datastore_versions.add(version1) TEST.datastore_versions.add(version2) TEST.logs = utils.TestDataContainer() TEST.logs.add(log1, log2, log3, log4)